pgsql: Fix slot type issue for fuzzy distance index scan overout-of-co - Mailing list pgsql-committers

From Andres Freund
Subject pgsql: Fix slot type issue for fuzzy distance index scan overout-of-co
Date
Msg-id E1hHYfF-0003fx-V1@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix slot type issue for fuzzy distance index scan over out-of-core table AM.

For amcanreorderby scans the nodeIndexscan.c's reorder queue holds
heap tuples, but the underlying table likely does not. Before this fix
we'd return different types of slots, depending on whether the tuple
came from the reorder queue, or from the index + table.

While that could be fixed by signalling that the node doesn't return a
fixed type of slot, it seems better to instead remove the separate
slot for the reorder queue, and use ExecForceStoreHeapTuple() to store
tuples from the queue. It's not particularly common to need
reordering, after all.

This reverts most of the iss_ReorderQueueSlot related changes to
nodeIndexscan.c made in 1a0586de3657cd3, except that now
ExecForceStoreHeapTuple() is used instead of ExecStoreHeapTuple().

Noticed when testing zheap against the in-core version of tableam.

Author: Andres Freund

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/b8b94ea129ffc988c2d30eb2b5aa65a93329b8fa

Modified Files
--------------
src/backend/executor/nodeIndexscan.c | 20 ++++++--------------
src/include/nodes/execnodes.h        |  1 -
2 files changed, 6 insertions(+), 15 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Fix problems with auto-held portals.
Next
From: Stephen Frost
Date:
Subject: pgsql: GSSAPI: Improve documentation and tests