On 9/11/17 03:11, Michael Banck wrote:
> So my patch only moves the slot creation slightly further forward,
> AFAICT.
I have committed this patch, along with some associated cleanup.
> AIUI, wal streaming always begins at last checkpoint and from my tests
> the restart_lsn of the created replication slot is also before that
> checkpoint's lsn. However, I hope somebody more familiar with the
> WAL/replication slot code could comment on that. What I dropped in the
> refactoring is the RESERVE_WAL that used to be there when the temporary
> slot gets created, I have readded that now.
I had to make some changes to that, because the way your patch was
written it would use RESERVE_WAL also for the calls from pg_receivewal
--create-slot, which would have been a behavior change. So I added
another argument to CreateReplicationSlot() to control that.
> I also added a TAP test case that tries to check that the restart_lsn is
> lower than the checkpoint_lsn, which appears to be the case.
I think that test was written incorrectly, because it didn't actually
check the $checkpoint_lsn that it read. I have not included that test
in the committed patch. Feel free to send another patch if you want to
add more or different tests.
--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers