Propagate sort instrumentation from workers back to leader

Enterprise / PostgreSQL - Robert Haas [postgresql.org] - 29 August 2017 13:26 EDT

Up until now, when parallel query was used, no details about the sort method or space used by the workers were available; details were shown only for any sorting done by the leader. Fix that.

Commit 1177ab1dabf72bafee8f19d904cee3a299f25892 forced the test case added by commit 1f6d515a67ec98194c23a5db25660856c9aab944 to run without parallelism; now that we have this infrastructure, allow that again, with a little tweaking to make it pass with and without force_parallel_mode.

Robert Haas and Tom Lane

Discussion: http://postgr.es/m/CA+Tgmoa2VBZW6S8AAXfhpHczb=Rf6RqQ2br+zJvEgwJ0uoD_tQ@mail.gmail.com

bf11e7e Propagate sort instrumentation from workers back to leader.
src/backend/commands/explain.c | 57 +++++++++++-
src/backend/executor/execParallel.c | 155 ++++++++++++++++++--------------
src/backend/executor/nodeSort.c | 97 ++++++++++++++++++++
src/backend/utils/sort/tuplesort.c | 56 +++++++++---
src/include/executor/nodeSort.h | 7 ++
src/include/nodes/execnodes.h | 12 +++
src/include/utils/tuplesort.h | 34 ++++++-
src/test/regress/expected/subselect.out | 5 +-
src/test/regress/sql/subselect.sql | 6 +-
9 files changed, 342 insertions(+), 87 deletions(-)

Upstream: git.postgresql.org


  • Share