On Tue, Nov 16, 2021 at 12:01 PM Masahiko Sawada <sawada.m...@gmail.com> wrote: > > On Mon, Nov 15, 2021 at 11:43 PM vignesh C <vignes...@gmail.com> wrote: > > > > On Mon, Nov 15, 2021 at 2:48 PM Masahiko Sawada <sawada.m...@gmail.com> > > wrote: > > > > > > On Mon, Nov 15, 2021 at 4:49 PM Greg Nancarrow <gregn4...@gmail.com> > > > wrote: > > > > > > > > On Mon, Nov 15, 2021 at 1:49 PM Masahiko Sawada <sawada.m...@gmail.com> > > > > wrote: > > > > > > > Right. I've fixed this issue and attached an updated patch.
Few comments: 1) should we set subwentry to NULL to handle !create && !found case or we could return NULL similar to the earlier function. +static PgStat_StatSubWorkerEntry * +pgstat_get_subworker_entry(PgStat_StatDBEntry *dbentry, Oid subid, Oid subrelid, + bool create) +{ + PgStat_StatSubWorkerEntry *subwentry; + PgStat_StatSubWorkerKey key; + bool found; + HASHACTION action = (create ? HASH_ENTER : HASH_FIND); + + key.subid = subid; + key.subrelid = subrelid; + subwentry = (PgStat_StatSubWorkerEntry *) hash_search(dbentry->subworkers, + (void *) &key, + action, &found); + + /* If not found, initialize the new one */ + if (create && !found) 2) Should we keep the line width to 80 chars: +/* ---------- + * PgStat_MsgSubWorkerError Sent by the apply worker or the table sync worker to + * report the error occurred during logical replication. + * ---------- + */ +#define PGSTAT_SUBWORKERERROR_MSGLEN 256 +typedef struct PgStat_MsgSubWorkerError +{ Regards, Vignesh