pgsql: Add background worker type

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Add background worker type
Date: 2017-09-29 15:11:40
Message-ID: E1dxwx2-0003aK-Sf@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Add background worker type

Add bgw_type field to background worker structure. It is intended to be
set to the same value for all workers of the same type, so they can be
grouped in pg_stat_activity, for example.

The backend_type column in pg_stat_activity now shows bgw_type for a
background worker. The ps listing also no longer calls out that a
process is a background worker but just show the bgw_type. That way,
being a background worker is more of an implementation detail now that
is not shown to the user. However, most log messages still refer to
'background worker "%s"'; otherwise constructing sensible and
translatable log messages would become tricky.

Reviewed-by: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
Reviewed-by: Daniel Gustafsson <daniel(at)yesql(dot)se>

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/5373bc2a0867048bb78f93aede54ac1309b5e227

Modified Files
--------------
contrib/pg_prewarm/autoprewarm.c | 6 ++--
doc/src/sgml/bgworker.sgml | 11 +++++--
src/backend/access/transam/parallel.c | 1 +
src/backend/postmaster/bgworker.c | 51 +++++++++++++++++++++++++++---
src/backend/postmaster/postmaster.c | 5 +--
src/backend/replication/logical/launcher.c | 3 ++
src/backend/utils/adt/pgstatfuncs.c | 16 ++++++++--
src/include/postmaster/bgworker.h | 2 ++
src/test/modules/test_shm_mq/setup.c | 2 +-
src/test/modules/worker_spi/worker_spi.c | 8 +++--
10 files changed, 89 insertions(+), 16 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2017-09-29 15:32:10 pgsql: Marginal improvement for generated code in execExprInterp.c.
Previous Message Robert Haas 2017-09-29 14:28:35 pgsql: Remove replacement selection sort.