RE: Logical Replication of sequences

Zhijie Hou (Fujitsu) <houzj.fnst@fujitsu.com>

From: "Zhijie Hou (Fujitsu)" <houzj.fnst@fujitsu.com>
To: Amit Kapila <amit.kapila16@gmail.com>, Dilip Kumar <dilipbalaut@gmail.com>
Cc: "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>, vignesh C <vignesh21@gmail.com>, Peter Smith <smithpb2250@gmail.com>, shveta malik <shveta.malik@gmail.com>, Shlok Kyal <shlok.kyal.oss@gmail.com>, Chao Li <li.evan.chao@gmail.com>, Masahiko Sawada <sawada.mshk@gmail.com>, Nisha Moond <nisha.moond412@gmail.com>, Peter Eisentraut <peter@eisentraut.org>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Euler Taveira <euler@eulerto.com>, Michael Paquier <michael@paquier.xyz>, "Jonathan S. Katz" <jkatz@postgresql.org>
Date: 2025-10-15T11:20:49Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Doc: Add documentation for sequence synchronization.

  2. Remove unused assignment in CREATE PUBLICATION grammar.

  3. Add seq_sync_error_count to subscription statistics.

  4. Fix few issues in commit 5509055d69.

  5. Add sequence synchronization for logical replication.

  6. Add worker type argument to logical replication worker functions.

  7. Introduce "REFRESH SEQUENCES" for subscriptions.

  8. Refactor logical worker synchronization code into a separate file.

  9. Standardize use of REFRESH PUBLICATION in code and messages.

  10. Add "ALL SEQUENCES" support to publications.

  11. Expose sequence page LSN via pg_get_sequence_data.

  12. Resume conflict-relevant data retention automatically.

  13. Post-commit review fixes for 228c370868.

  14. Generate GUC tables from .dat file

Attachments

On Wednesday, October 15, 2025 3:03 PM Amit Kapila <amit.kapila16@gmail.com> wrote:

> 
> On Tue, Oct 14, 2025 at 5:08 PM Dilip Kumar <dilipbalaut@gmail.com> wrote:
> >
> > On Tue, Oct 14, 2025 at 3:36 PM Amit Kapila <amit.kapila16@gmail.com>
> wrote:
> >
> > 0001 and 0002 looks good,
> >
> 
> Thanks, I pushed 0001. I feel it is better to next commit refactoring patch
> v20251014-0003-Reorganize-tablesync-Code-and-Introduce-sy as that would
> be less controversial. What do you think?

I agree and has reordered the latest patch set.

> 
> > except this duplicate version checking code below in fetch_relation_list
> [1][2], I mean check_relkind and sequence fetching both are related changes
> and start from version 19, so we can do a single check.  Instead of the
> 'check_relkind' variable name we can change it to 'support_relkind_seq' or
> something like that and then we can use this in both checks.
> >
> 
> Sounds reasonable to me.

Changed as suggested.

Here is the new version patch set which includes the following changes:

0001:
* Addressed comments from Shveta[1] and Chao li[2].

0002
* Addressed Shveta[3], Kuroda-San[4] and Dilip's comments[5].

TODO:
* The comments on 0003 patch by Amit[6].
* The comment from Amit[7] to avoid creating slot/origin for sequence only subscription.

[1] https://www.postgresql.org/message-id/CAJpy0uCSKChetEw1buBrZu3vAV8OYv3X9MygNxKHw5WWzMd1Gg%40mail.gmail.com 
[2] https://www.postgresql.org/message-id/158C2EDB-D505-46A6-996D-296EC1B3ACE2%40gmail.com
[3] https://www.postgresql.org/message-id/CAJpy0uCPuTLEkuC7kbXwvyUuxrtKOhDb9A3ti6EhOKgzMNkbcQ%40mail.gmail.com
[4] https://www.postgresql.org/message-id/OSCPR01MB14966B8BB27B784674506C9A8F5EBA%40OSCPR01MB14966.jpnprd01.prod.outlook.com
[5] https://www.postgresql.org/message-id/CAA4eK1%2BHb4H9z8C5kiuc42%3Dw%3DPi9dQAioJW%3D2OSr9eAnpoxF6w%40mail.gmail.com
[6] https://www.postgresql.org/message-id/CAA4eK1J8UYFPgcM5b0aHvbRT_3pVNUpnpvypQU5vqk4Uu%3DmXVg%40mail.gmail.com
[7] https://www.postgresql.org/message-id/CAA4eK1J%3Dgc8WXVc2Hy0Xcq4KtWU-z-dxBiZHbT62jz3QPBZ5CQ%40mail.gmail.com

Best Regards,
Hou zj