pgsql: Respect Hot Standby controls while recycling btree index pages.

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Respect Hot Standby controls while recycling btree index pages.
Date: 2011-06-16 09:17:35
Message-ID: E1QX8hj-0006or-2H@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Respect Hot Standby controls while recycling btree index pages.
Btree pages were recycled after VACUUM deletes all records on a
page and then a subsequent VACUUM occurs after the RecentXmin
horizon is reached. Using RecentXmin meant that we did not respond
correctly to the user controls provide to avoid Hot Standby
conflicts and so spurious conflicts could be generated in some
workload combinations. We now reuse pages only when we reach
RecentGlobalXmin, which can be much later in the presence of long
running queries and is also controlled by vacuum_defer_cleanup_age.

Noah Misch and Simon Riggs

Branch
------
REL9_0_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/1c7ddbf3501e989d6b783dc516c44c3535dbe03f

Modified Files
--------------
src/backend/access/nbtree/nbtpage.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Simon Riggs 2011-06-16 09:19:54 pgsql: Respect Hot Standby controls while recycling btree index pages.
Previous Message Tom Lane 2011-06-16 01:46:00 pgsql: Use single quotes in preference to double quotes for protecting