]> granicus.if.org Git - postgresql/commit
Teach on_exit_reset() to discard pending cleanups for dsm.
authorRobert Haas <rhaas@postgresql.org>
Mon, 10 Mar 2014 14:17:19 +0000 (10:17 -0400)
committerRobert Haas <rhaas@postgresql.org>
Mon, 10 Mar 2014 14:17:19 +0000 (10:17 -0400)
commitcb9a0c7987466b130fbced01ab5d5481cf3a16df
tree930f14e0a5051d4e5cb80df023be1650cf250dd9
parent77049443a1794bc5222aabb051476367fe347202
Teach on_exit_reset() to discard pending cleanups for dsm.

If a postmaster child invokes fork() and then calls on_exit_reset, that
should be sufficient to let it exit() without breaking anything, but
dynamic shared memory broke that by not updating on_exit_reset() to
discard callbacks registered with dynamic shared memory segments.

Per investigation of a complaint from Tom Lane.
src/backend/storage/ipc/dsm.c
src/backend/storage/ipc/ipc.c
src/include/storage/dsm.h