mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-05 13:49:20 +02:00
Remove duplicate InitPostmasterChild() call while starting a bgworker.
This is apparently harmless on Windows, but on Unix it results in an
assertion failure. We'd not noticed because this code doesn't get
used on Unix unless you build with -DEXEC_BACKEND. Bug was evidently
introduced by sloppy refactoring in commit 31c453165
.
Thomas Munro
Discussion: <CAEepm=1VOnbVx4wsgQFvj94hu9jVt2nVabCr7QiooUSvPJXkgQ@mail.gmail.com>
This commit is contained in:
parent
d02b38799d
commit
5816f21d8c
@ -4787,8 +4787,6 @@ SubPostmasterMain(int argc, char *argv[])
|
|||||||
/* do this as early as possible; in particular, before InitProcess() */
|
/* do this as early as possible; in particular, before InitProcess() */
|
||||||
IsBackgroundWorker = true;
|
IsBackgroundWorker = true;
|
||||||
|
|
||||||
InitPostmasterChild();
|
|
||||||
|
|
||||||
/* Close the postmaster's sockets */
|
/* Close the postmaster's sockets */
|
||||||
ClosePostmasterPorts(false);
|
ClosePostmasterPorts(false);
|
||||||
|
|
||||||
@ -4801,8 +4799,10 @@ SubPostmasterMain(int argc, char *argv[])
|
|||||||
/* Attach process to shared data structures */
|
/* Attach process to shared data structures */
|
||||||
CreateSharedMemoryAndSemaphores(false, 0);
|
CreateSharedMemoryAndSemaphores(false, 0);
|
||||||
|
|
||||||
|
/* Fetch MyBgworkerEntry from shared memory */
|
||||||
shmem_slot = atoi(argv[1] + 15);
|
shmem_slot = atoi(argv[1] + 15);
|
||||||
MyBgworkerEntry = BackgroundWorkerEntry(shmem_slot);
|
MyBgworkerEntry = BackgroundWorkerEntry(shmem_slot);
|
||||||
|
|
||||||
StartBackgroundWorker();
|
StartBackgroundWorker();
|
||||||
}
|
}
|
||||||
if (strcmp(argv[1], "--forkarch") == 0)
|
if (strcmp(argv[1], "--forkarch") == 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user