Basic binary heap implementation.
There are probably other places where this can be used, but for now,
this just makes MergeAppend use it, so that this code will have test
coverage. There is other work in the queue that will use this, as
well.
Abhijit Menon-Sen, reviewed by Andres Freund, Robert Haas, Álvaro
Herrera, Tom Lane, and others.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/7a2fe9bd0371b819aacc97a007ec1d955237d207
Modified Files
--------------
src/backend/executor/nodeMergeAppend.c | 114 ++++---------
src/backend/lib/Makefile | 2 +-
src/backend/lib/binaryheap.c | 293 ++++++++++++++++++++++++++++++++
src/include/lib/binaryheap.h | 53 ++++++
src/include/nodes/execnodes.h | 8 +-
5 files changed, 380 insertions(+), 90 deletions(-)