Simon Riggs <simon@2ndquadrant.com> writes:
> On Fri, 2006-03-24 at 19:02 -0400, Tom Lane wrote:
>> Comments in IndexBuildHeapScan describe the indexing of recently-dead
>> tuples as needed "to keep VACUUM from complaining", but actually there is
>> a more compelling reason to do it: failure to do so violates MVCC semantics.
> I notice the same error occurs in REL8_0_STABLE, REL7_4_STABLE and
> REL7_3_STABLE. This is a data loss bug, so why not back apply to those
> releases also?
I'm not sure it really qualifies as "data loss", since the answers would
be only transiently wrong. I chose not to back-patch further than 8.1
for a couple of reasons:
* It's a corner case, and given the lack of complaints, the risk of
breaking something in the back branches has to be factored into the
decision. I believe that the testing I did in HEAD validates the
patch well enough against 8.1, but the further back you go the less
well the correlation applies.
* The same problem exists with respect to CLUSTER, not to mention the
table-rewriting variants of ALTER TABLE. Any patch for CLUSTER will
be far more invasive and is unlikely to get back-patched at all.
regards, tom lane