RE: Time delayed LR (WAS Re: logical replication restrictions) - Mailing list pgsql-hackers

From Hayato Kuroda (Fujitsu)
Subject RE: Time delayed LR (WAS Re: logical replication restrictions)
Date
Msg-id TYAPR01MB58668C7A1AFA17803273B47AF56B9@TYAPR01MB5866.jpnprd01.prod.outlook.com
Whole thread Raw
In response to RE: Time delayed LR (WAS Re: logical replication restrictions)  ("Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>)
Responses Re: Time delayed LR (WAS Re: logical replication restrictions)  (Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>)
Re: Time delayed LR (WAS Re: logical replication restrictions)  (Amit Kapila <amit.kapila16@gmail.com>)
List pgsql-hackers
Dear hackers,

I rebased and refined my PoC. Followings are the changes:

* Added support for ALTER SUBSCRIPTION .. SKIP LSN. The skip operation is done when
the application starts. User must indicate the commit_lsn of the transaction to
skip the transaction. If the apply worker faces ERROR, it will output the commit_lsn.
Apart from non-delayed transactions, the prepared but not committed transaction
cannot be skipped. This is because currently the prepare_lsn is not recorded to
the file.

  
* Added integrity checks. When the debug build is enabled, each messages written in
the files has the CRC checksums. When the message is read by apply worker, the
worker checks it and raise PANIC if the process fails to compare. I'm not sure
the performancec degradation can be accepted, so I added it only when
USE_ASSERT_CHECKING is on.

Best Regards,
Hayato Kuroda
FUJITSU LIMITED


Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: Perform streaming logical transactions by background workers and parallel apply
Next
From: Alvaro Herrera
Date:
Subject: Re: run pgindent on a regular basis / scripted manner