Re: Logical Replication Sync Validation

From: Christophe Pettus <xof(at)thebuild(dot)com>
To: Robert Sjöblom <robert(dot)sjoblom(at)fortnox(dot)se>
Cc: pgsql-general <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: Logical Replication Sync Validation
Date: 2023-04-18 10:48:49
Message-ID: 1D023CFA-64F5-45BA-B9BC-8985813040C2@thebuild.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

> On Apr 18, 2023, at 03:45, Robert Sjöblom <robert(dot)sjoblom(at)fortnox(dot)se> wrote:
> I'm aware of that. But you can, however, do something like:
>
> SELECT * FROM FOO WHERE CTID = (SELECT MAX(CTID) FROM FOO);
>
> on both sides. The idea being that if I change FOO, the CTID of the changed row will not be the same on both sides, but the CTID will point to the changed row on both sides. Or am I not understanding it correctly?

CTIDs are not monotonically increasing; they're locator in the file that holds the table data. There's no reason to believe that a record on the subscriber will happen to land in any particular position.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2023-04-18 14:30:11 Re: Request for information about postgres version 15.2 stability
Previous Message John Howroyd 2023-04-18 09:52:55 Re: Guidance on INSERT RETURNING order