Simon Riggs <simon(at)2ndQuadrant(dot)com> writes:
> Reduce spurious Hot Standby conflicts from never-visible records.
> Hot Standby conflicts only with tuples that were visible at
> some point. So ignore tuples from aborted transactions or for
> tuples updated/deleted during the inserting transaction when
> generating the conflict transaction ids.
> Following detailed analysis and test case by Noah Misch.
> Original report covered btree delete records, correctly observed
> by Heikki Linnakangas that this applies to other cases also.
> Fix covers all sources of cleanup records via common code.
> Includes additional fix compared to commit on HEAD
ISTM HeapTupleHeaderAdvanceLatestRemovedXid is still pretty broken,
in that it's examining xmax without having checked that xmax is (a)
valid or (b) a lock rather than a deletion xmax.
regards, tom lane
In response to
Responses
pgsql-hackers by date
| Next: | From: Dimitri Fontaine | Date: 2010-12-10 19:28:17 |
| Subject: Re: Extensions, patch v16 |
| Previous: | From: Dmitriy Igrishin | Date: 2010-12-10 18:26:11 |
| Subject: Re: Extended query protocol and exact types matches. |
pgsql-committers by date
| Next: | From: Tom Lane | Date: 2010-12-10 22:35:50 |
| Subject: pgsql: Use symbolic names not octal constants for file permissionflags |
| Previous: | From: Tom Lane | Date: 2010-12-10 16:36:40 |
| Subject: pgsql: Fix efficiency problems in tuplestore_trim(). |