aboutsummaryrefslogtreecommitdiff
path: root/src/bin/pg_dump/parallel.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin/pg_dump/parallel.c')
-rw-r--r--src/bin/pg_dump/parallel.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/bin/pg_dump/parallel.c b/src/bin/pg_dump/parallel.c
index 3b8d5848b3a..54abecbc091 100644
--- a/src/bin/pg_dump/parallel.c
+++ b/src/bin/pg_dump/parallel.c
@@ -47,6 +47,7 @@ typedef struct
{
ArchiveHandle *AH;
RestoreOptions *ropt;
+ DumpOptions *dopt;
int worker;
int pipeRead;
int pipeWrite;
@@ -464,12 +465,13 @@ init_spawned_worker_win32(WorkerInfo *wi)
ArchiveHandle *AH;
int pipefd[2] = {wi->pipeRead, wi->pipeWrite};
int worker = wi->worker;
+ DumpOptions *dopt = wi->dopt;
RestoreOptions *ropt = wi->ropt;
AH = CloneArchive(wi->AH);
free(wi);
- SetupWorker(AH, pipefd, worker, ropt);
+ SetupWorker(AH, pipefd, worker, dopt, ropt);
DeCloneArchive(AH);
_endthreadex(0);
@@ -546,6 +548,7 @@ ParallelBackupStart(ArchiveHandle *AH, DumpOptions *dopt, RestoreOptions *ropt)
wi = (WorkerInfo *) pg_malloc(sizeof(WorkerInfo));
wi->ropt = ropt;
+ wi->dopt = dopt;
wi->worker = i;
wi->AH = AH;
wi->pipeRead = pstate->parallelSlot[i].pipeRevRead = pipeMW[PIPE_READ];