mirror of
https://git.postgresql.org/git/postgresql.git
synced 2026-02-06 18:37:32 +08:00
Try again to fix accumulation of parallel worker instrumentation.
When a Gather or Gather Merge node is started and stopped multiple times, accumulate instrumentation data only once, at the end, instead of after each execution, to avoid recording inflated totals. Commit 778e78ae9fa51e58f41cbdc72b293291d02d8984, the previous attempt at a fix, instead reset the state after every execution, which worked for the general instrumentation data but had problems for the additional instrumentation specific to Sort and Hash nodes. Report by hubert depesz lubaczewski. Analysis and fix by Amit Kapila, following a design proposal from Thomas Munro, with a comment tweak by me. Discussion: http://postgr.es/m/20171127175631.GA405@depesz.com
This commit is contained in:
@ -26,7 +26,6 @@ extern void ExecReScanSort(SortState *node);
|
||||
/* parallel instrumentation support */
|
||||
extern void ExecSortEstimate(SortState *node, ParallelContext *pcxt);
|
||||
extern void ExecSortInitializeDSM(SortState *node, ParallelContext *pcxt);
|
||||
extern void ExecSortReInitializeDSM(SortState *node, ParallelContext *pcxt);
|
||||
extern void ExecSortInitializeWorker(SortState *node, ParallelWorkerContext *pwcxt);
|
||||
extern void ExecSortRetrieveInstrumentation(SortState *node);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user