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


Reply via email to