Reset the binary heap in MergeAppend rescans.
Failing to do so can cause queries to return wrong data, error out or crash.
This requires adding a new binaryheap_reset() method to binaryheap.c,
but that probably should have been there anyway.
Per bug #8410 from Terje Elde. Diagnosis and patch by Andres Freund.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/8e2b71d2d0381f7acc820a2400580a1e3a6add8c
Modified Files
--------------
src/backend/executor/nodeMergeAppend.c | 1 +
src/backend/lib/binaryheap.c | 20 +++++++++++++++++---
src/include/lib/binaryheap.h | 1 +
3 files changed, 19 insertions(+), 3 deletions(-)