Heikki Linnakangas wrote:
Gregory Stark wrote:
The question I had was whether your solution for btree pointers marked
dead
and later dropped from the index works when the user hasn't configured a
timeout and doesn't want standby queries killed.
Yes, it's not any different from vacuum WAL records.
No wait, there is a nasty corner-case. When an index tuple is marked as
killed, no WAL record is written. Since there's now WAL record, it won't
be killed in the slave yet. But if we take a full-page image of that
page later for some other operation, the LP_DEAD flag is included in the
full-page image. If the flag sneaks into the slave without an explicit
WAL record like that, there's no latestRemovedXid for the slave to wait on.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers