On Mon, Oct 18, 2021 9:34 AM Masahiko Sawada <sawada.m...@gmail.com> wrote: > I've attached updated patches that incorporate all comments I got so far.
Hi, Here are some minor comments for the patches. v17-0001-Add-a-subscription-errors-statistics-view-pg_sta.patch 1) + /* Clean up */ + if (not_ready_rels != NIL) + list_free_deep(not_ready_rels); Maybe we don't need the ' if (not_ready_rels != NIL)' check as list_free_deep will do this check internally. 2) + for (int i = 0; i < msg->m_nentries; i++) + { + HASH_SEQ_STATUS sstat; + PgStat_StatSubWorkerEntry *wentry; + + /* Remove all worker statistics of the subscription */ + hash_seq_init(&sstat, subWorkerStatHash); + while ((wentry = (PgStat_StatSubWorkerEntry *) hash_seq_search(&sstat)) != NULL) + { + if (wentry->key.subid == msg->m_subids[i]) + (void) hash_search(subWorkerStatHash, (void *) &(wentry->key), + HASH_REMOVE, NULL); Would it be a little faster if we scan hashtable in outerloop and scan the msg in innerloop ? Like: while ((wentry = (PgStat_StatSubWorkerEntry *) hash_seq_search(&sstat)) != NULL) { for (int i = 0; i < msg->m_nentries; i++) ... v17-0002-Add-RESET-command-to-ALTER-SUBSCRIPTION-command 1) I noticed that we cannot RESET slot_name while we can SET it. And the slot_name have a default behavior that " use the name of the subscription for the slot name.". So, is it possible to support RESET it ? Best regards, Hou zj