RE: Synchronizing slots from primary to standby

From: "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com>
To: 'shveta malik' <shveta(dot)malik(at)gmail(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
Cc: Peter Smith <smithpb2250(at)gmail(dot)com>, "Drouvot, Bertrand" <bertranddrouvot(dot)pg(at)gmail(dot)com>, Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Ashutosh Sharma <ashu(dot)coek88(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Ajin Cherian <itsajin(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Subject: RE: Synchronizing slots from primary to standby
Date: 2023-10-26 07:08:45
Message-ID: TYAPR01MB586680D90A106DD5528829EFF5DDA@TYAPR01MB5866.jpnprd01.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Dear Shveta,

> PFA v25 patch set. The changes are:

Thanks for making the patch! It seems that there are lots of comments, so
I can put some high-level comments for 0001.
Sorry if there are duplicated comments.

1.
The patch seemed not to consider the case that failover option between replication
slot and subscription were different. Currently slot option will be overwritten
by subscription one.

Actually, I'm not sure what specification is better. Regarding the two_phase,
2PC will be decoded only when the both of settings are true. Should we follow?

2.
Currently ctx->failover is set only in the pgoutput_startup(), but not sure it is OK.
Can we change the parameter in CreateDecodingContext() or similar functions?

Because IIUC it means that only slots which have pgoutput can wait. Other
output plugins must understand the change and set faliover flag as well -
I felt it is not good. E.g., you might miss to enable the parameter in test_decoding.

Regarding the two_phase parameter, setting on plugin layer is good because it
quite affects the output. As for the failover, it is not related with the
content so that all of slots should be enabled.

I think CreateDecodingContext or StartupDecodingContext() is the common path.
Or, is it the out-of-scope for now?

Best Regards,
Hayato Kuroda
FUJITSU LIMITED

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Rushabh Lathia 2023-10-26 07:10:21 Parallel query behaving different with custom GUCs
Previous Message torikoshia 2023-10-26 06:53:22 Re: RFC: Logging plan of the running query