Hi,
On 12/7/23 10:07 AM, shveta malik wrote:
On Thu, Dec 7, 2023 at 1:19 PM Drouvot, Bertrand
<bertranddrouvot...@gmail.com> wrote:
Might be worth to add comments in the code (around the WalRcv->latestWalEnd
checks) that no "lagging" sync are possible if the walreceiver is not started
though?
I am a bit confused. Do you mean as a TODO item? Otherwise the comment
will be opposite of the code we are writing.
Sorry for the confusion: what I meant to say is that
synchronization (should it be lagging) is not possible if the walreceiver is
not started
(as XLogRecPtrIsInvalid(WalRcv->latestWalEnd) would be true).
More precisely here (in synchronize_slots()):
/* The primary_slot_name is not set yet or WALs not received yet */
SpinLockAcquire(&WalRcv->mutex);
if (!WalRcv ||
(WalRcv->slotname[0] == '\0') ||
XLogRecPtrIsInvalid(WalRcv->latestWalEnd))
{
SpinLockRelease(&WalRcv->mutex);
return naptime;
}
Regards,
--
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com