mirror of
https://github.com/postgres/postgres.git
synced 2026-01-29 12:02:15 +03:00
Propagate sort instrumentation from workers back to leader.
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. Commit1177ab1dabforced the test case added by commit1f6d515a67to 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
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
#ifndef NODESORT_H
|
||||
#define NODESORT_H
|
||||
|
||||
#include "access/parallel.h"
|
||||
#include "nodes/execnodes.h"
|
||||
|
||||
extern SortState *ExecInitSort(Sort *node, EState *estate, int eflags);
|
||||
@@ -22,4 +23,10 @@ extern void ExecSortMarkPos(SortState *node);
|
||||
extern void ExecSortRestrPos(SortState *node);
|
||||
extern void ExecReScanSort(SortState *node);
|
||||
|
||||
/* parallel instrumentation support */
|
||||
extern void ExecSortEstimate(SortState *node, ParallelContext *pcxt);
|
||||
extern void ExecSortInitializeDSM(SortState *node, ParallelContext *pcxt);
|
||||
extern void ExecSortInitializeWorker(SortState *node, shm_toc *toc);
|
||||
extern void ExecSortRetrieveInstrumentation(SortState *node);
|
||||
|
||||
#endif /* NODESORT_H */
|
||||
|
||||
Reference in New Issue
Block a user