Logical replication - initial data synchronization

From: PG Doc comments form <noreply(at)postgresql(dot)org>
To: pgsql-docs(at)lists(dot)postgresql(dot)org
Cc: kdg(dot)dev(at)gmail(dot)com
Subject: Logical replication - initial data synchronization
Date: 2024-05-18 21:02:11
Message-ID: 171606613152.686.7693963105919927503@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-docs

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/16/logical-replication-subscription.html
Description:

I'm reading up on Logical Replication and have been reading the pages in
order.

The first 2 pages:
https://www.postgresql.org/docs/current/logical-replication.html and
https://www.postgresql.org/docs/current/logical-replication-publication.html
both speak of the requirement to set up a snapshot and explain that
publication will then send further updates as they happen to subscribers.

But the 3rd page,
https://www.postgresql.org/docs/current/logical-replication-subscription.html
now mentions this: "Additional replication slots may be required for the
initial data synchronization of pre-existing table data and those will be
dropped at the end of data synchronization."

For me, reading the first 2 pages implied that I would have to perform some
manual command that starts the creation of a snapshot of pre-existing table
data, and unpack this on the subscriber node somehow.

The text on the "Subscription" page sounds to me like this is actually
something the publisher<-> subscriber model of the postgres software can
manage on its own. As opposed to a snapshot, which feels more like the
concept of a basebackup.

Regardless of that being correct or not, my current impression is that the
description isn't consistent across pages. Maybe the text is obvious for
people who've performed setup of logical replication before, but I have
never done this. To me, the description on the first 2 pages seems
inconsistent with the description I just encountered on the 3rd page. I was
under the impression there was no such thing as "initial data
synchronization of pre-existing table data" in terms of postgres doing this
by itself.

Am I missing something extremely simple, or can the description of the
involved operations be made more consistent across documentation pages?

Regards,
Koen De Groote

Browse pgsql-docs by date

  From Date Subject
Next Message jian he 2024-05-19 08:43:30 Re: Add small detail to RAISE statement descripton
Previous Message PG Doc comments form 2024-05-18 20:44:47 Unclear on Publication documentation page