From 29c38882a6f99ab65bca20a55287bc418b453088 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Fri, 10 Nov 2017 10:00:50 -0500 Subject: [PATCH 1/6] pass-eflags-to-worker-v1 --- src/backend/executor/execParallel.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/backend/executor/execParallel.c b/src/backend/executor/execParallel.c index 1b477baecb..80778e8a61 100644 --- a/src/backend/executor/execParallel.c +++ b/src/backend/executor/execParallel.c @@ -65,6 +65,7 @@ typedef struct FixedParallelExecutorState { int64 tuples_needed; /* tuple bound, see ExecSetTupleBound */ + int eflags; } FixedParallelExecutorState; /* @@ -511,6 +512,7 @@ ExecInitParallelPlan(PlanState *planstate, EState *estate, int nworkers, /* Store fixed-size state. */ fpes = shm_toc_allocate(pcxt->toc, sizeof(FixedParallelExecutorState)); fpes->tuples_needed = tuples_needed; + fpes->eflags = estate->es_top_eflags; shm_toc_insert(pcxt->toc, PARALLEL_KEY_EXECUTOR_FIXED, fpes); /* Store query string */ @@ -1042,7 +1044,7 @@ ParallelQueryMain(dsm_segment *seg, shm_toc *toc) area = dsa_attach_in_place(area_space, seg); /* Start up the executor */ - ExecutorStart(queryDesc, 0); + ExecutorStart(queryDesc, fpes->eflags); /* Special executor initialization steps for parallel workers */ queryDesc->planstate->state->es_query_dsa = area; -- 2.13.5 (Apple Git-94)