On Tue, Dec 26, 2017 at 6:19 PM, Tels <[email protected]> wrote: > Moin, > > On Mon, December 25, 2017 7:26 pm, Masahiko Sawada wrote: >> On Tue, Dec 26, 2017 at 1:10 AM, Petr Jelinek >> <[email protected]> wrote: >>> On 21/11/17 22:06, Masahiko Sawada wrote: >>>> >>>> After investigation, I found out that my previous patch was wrong >>>> direction. I should have changed XLogSendLogical() so that we can >>>> check the read LSN and set WalSndCaughtUp = true even after read a >>>> record without wait. Attached updated patch passed 'make check-world'. >>>> Please review it. >>>> >>> >>> Hi, >>> >>> This version looks good to me and seems to be in line with what we do in >>> physical replication. >>> >>> Marking as ready for committer. > > (Sorry Masahiko, you'll get this twice, as fumbled the reply button.) > > I have not verifed that comment and/or code are correct, just a grammar fix: > > + /* > + * If we've sent a record is at or beyond the flushed > point, then > + * we're caught up. > > That should read more like this: > > "If we've sent a record that is at or beyond the flushed point, we have > caught up." >
Thank you for reviewing the patch!
Actually, that comment is inspired by the comment just below comment.
ISTM it's better to fix both if grammar of them is not appropriate.
+
+ /*
+ * If we've sent a record that is at or beyond the flushed point, we
+ * have caught up.
+ */
+ if (sentPtr >= GetFlushRecPtr())
+ WalSndCaughtUp = true;
}
else
{
/*
* If the record we just wanted read is at or beyond the flushed
* point, then we're caught up.
*/
if (logical_decoding_ctx->reader->EndRecPtr >= GetFlushRecPtr())
{
Attached a updated patch. Please review it.
Regards,
--
Masahiko Sawada
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center
logical_repl_caught_up_v3.patch
Description: Binary data
