On Tue, Feb 2, 2021 at 10:49 AM Michael Paquier <mich...@paquier.xyz> wrote: > > On Tue, Feb 02, 2021 at 10:38:31AM +1100, Peter Smith wrote: > > PSA a trivial patch to correct what seems like a typo in the tablesync > > comment. > > - * subscribed tables and their state. Some transient state during data > - * synchronization is kept in shared memory. The states SYNCWAIT and > + * subscribed tables and their state. Some transient states during > data > + * synchronization are kept in shared memory. The states SYNCWAIT and > > This stuff refers to SUBREL_STATE_* in pg_subscription_rel.h, and FWIW > I find confusing the term "transient" in this context as a state may > last for a rather long time, depending on the time it takes to > synchronize the relation, no? >
These in-memory states are used after the initial copy is done. So, these are just for the time the tablesync worker is synced-up with apply worker. In some cases, they could be for a longer period of time when apply worker is quite ahead of tablesync worker then we will be in the CATCHUP state for a long time but SYNCWAIT will still be for a shorter period of time. > I am wondering if we could do better > here, say: > "The state tracking the progress of the relation synchronization is > additionally stored in shared memory, with SYNCWAIT and CATCHUP only > appearing in memory." > I don't mind changing to your proposed text but I think the current wording is also okay and seems clear to me. -- With Regards, Amit Kapila.