pgsql: Fix slot type assumptions for nodeGather[Merge].

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix slot type assumptions for nodeGather[Merge].
Date: 2018-11-16 07:22:50
Message-ID: E1gNYSo-0003vz-M9@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix slot type assumptions for nodeGather[Merge].

The assumption made in 1a0586de3657c was wrong, as evidenced by
buildfarm failure on locust, which runs with
force_parallel_mode=regress. The tuples accessed in either nodes are
in the outer slot, and we can't trivially rely on the slot type being
known because the leader might execute the subsidiary node directly,
or via the tuple queue on a worker. In the latter case the tuple will
always be a heaptuple slot, but in the former, it'll be whatever the
subsidiary node returns.

Branch
------
master

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

Modified Files
--------------
src/backend/executor/nodeGather.c | 22 ++++++++++++++++++----
src/backend/executor/nodeGatherMerge.c | 14 +++++++++++++-
2 files changed, 31 insertions(+), 5 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Alvaro Herrera 2018-11-16 18:26:01 pgsql: Redesign initialization of partition routing structures
Previous Message Andres Freund 2018-11-16 06:31:32 pgsql: Add dummy field to currently empty struct TupleTableSlotOps.