pgsql: Don't use bgw_main even to specify in-core bgworker entrypoints.

From: Robert Haas <rhaas(at)postgresql(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Don't use bgw_main even to specify in-core bgworker entrypoints.
Date: 2017-04-01 00:52:54
Message-ID: E1cu7Hi-0001U8-5K@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

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

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/2113ac4cbb12b815804e8873d761cade9ddf49b9

Modified Files
--------------
doc/src/sgml/bgworker.sgml | 36 ++++---------
src/backend/access/transam/parallel.c | 6 +--
src/backend/postmaster/bgworker.c | 81 +++++++++++++++++++-----------
src/backend/replication/logical/launcher.c | 6 ++-
src/include/access/parallel.h | 2 +
src/include/postmaster/bgworker.h | 5 +-
src/test/modules/test_shm_mq/setup.c | 1 -
src/test/modules/worker_spi/worker_spi.c | 4 +-
8 files changed, 75 insertions(+), 66 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Robert Haas 2017-04-01 01:13:26 pgsql: Fix parallel query so it doesn't spoil row estimates above Gathe
Previous Message Tom Lane 2017-04-01 00:29:33 pgsql: Fix unstable regression test result.