]> granicus.if.org Git - postgresql/commit
Don't use bgw_main even to specify in-core bgworker entrypoints.
authorRobert Haas <rhaas@postgresql.org>
Sat, 1 Apr 2017 00:35:51 +0000 (20:35 -0400)
committerRobert Haas <rhaas@postgresql.org>
Sat, 1 Apr 2017 00:50:31 +0000 (20:50 -0400)
commit0ef26bb394abedb2745bd838c26ecb3131682bda
tree5980b908346fc3c53e89f047111aa140e51c8755
parent86f0e538955ebacf6b79655807b635ca23ed6d28
Don't use bgw_main even to specify in-core bgworker entrypoints.

On EXEC_BACKEND builds, this can fail if ASLR is in use.

Backpatch to 9.5.  On master, completely remove the bgw_main field
completely, since there is no situation in which it is safe for an
EXEC_BACKEND build.  On 9.6 and 9.5, leave the field intact to avoid
breaking things for third-party code that doesn't care about working
under EXEC_BACKEND.  Prior to 9.5, there are no in-core bgworker
entrypoints.

Petr Jelinek, reviewed by me.

Discussion: http://postgr.es/m/09d8ad33-4287-a09b-a77f-77f8761adb5e@2ndquadrant.com
src/backend/access/transam/parallel.c
src/backend/postmaster/bgworker.c
src/include/access/parallel.h
src/test/modules/worker_spi/worker_spi.c