RE: logical replication empty transactions
Zhijie Hou (Fujitsu) <houzj.fnst@fujitsu.com>
From: "houzj.fnst@fujitsu.com" <houzj.fnst@fujitsu.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Ajin Cherian <itsajin@gmail.com>, "shiy.fnst@fujitsu.com" <shiy.fnst@fujitsu.com>, Peter Smith <smithpb2250@gmail.com>, "osumi.takamichi@fujitsu.com" <osumi.takamichi@fujitsu.com>, vignesh C <vignesh21@gmail.com>, Michael Paquier <michael@paquier.xyz>, Rahila Syed <rahila.syed@2ndquadrant.com>, Dilip Kumar <dilipbalaut@gmail.com>, Jeff
Janes <jeff.janes@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>, Craig Ringer <craig@2ndquadrant.com>
Date: 2022-03-28T12:21:42Z
Lists: pgsql-hackers
Attachments
- v32-0001-Skip-empty-transactions-for-logical-replication.patch (application/octet-stream) patch v32-0001
On Monday, March 28, 2022 3:08 PM Amit Kapila <amit.kapila16@gmail.com> wrote: > > On Fri, Mar 25, 2022 at 12:50 PM houzj.fnst@fujitsu.com > <houzj.fnst@fujitsu.com> wrote: > > > > Attach the new version patch with this change. > > > > Few comments: Thanks for the comments. > ================= > 1. I think we can move the keep_alive check after the tracklag record > check to keep it consistent with another patch [1]. Changed. > 2. Add the comment about the new parameter skipped_xact atop > WalSndUpdateProgress. Added. > 3. I think we need to call pq_flush_if_writable after sending a > keepalive message to avoid delaying sync transactions. Agreed. If we don’t flush the data, we might flush the keepalive later than before. And we could get the reply later as well and then the release of syncwait could be delayed. Attach the new version patch which addressed the above comments. The patch also adds a loop after the newly added keepalive message to make sure the message is actually flushed to the client like what did in WalSndWriteData. Best regards, Hou zj
Commits
-
Skip empty transactions for logical replication.
- d5a9d86d8ffc 15.0 landed
-
Add decoding of sequences to built-in replication
- 75b1521dae1f 15.0 cited
-
Allow specifying row filters for logical replication of tables.
- 52e4f0cd472d 15.0 cited