libpq environment variables in the server - Mailing list pgsql-hackers

From Peter Eisentraut
Subject libpq environment variables in the server
Date
Msg-id 33383613-690e-6f1b-d5ba-4957ff40f6ce@2ndquadrant.com
Whole thread Raw
Responses Re: libpq environment variables in the server  (Dmitry Igrishin <dmitigr@gmail.com>)
Re: libpq environment variables in the server  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
List pgsql-hackers
When libpq is loaded in the server (libpqwalreceiver, dblink,
postgres_fdw), it may use libpq environment variables set in the
postmaster environment for connection parameter defaults.  I have
noticed that this has some confusing effects in our test suites.  I
wonder if this is a good idea in general.

For example, the TAP test infrastructure sets PGAPPNAME to allow
identifying clients in the server log.  But this environment variable is
also inherited by temporary servers started with pg_ctl and is then in
turn used by libpqwalreceiver as the application_name for connecting to
remote servers where it then shows up in pg_stat_replication and is
relevant for things like synchronous_standby_names.

Also, the pg_rewind tests appear to rely implicitly on PGHOST and PGPORT
being set in the server environment to find the other node via
primary_conninfo.  That is easy to fix, but it shows that this kind of
thing can creep in unintentionally.

I was thinking that maybe we should clear all libpq environment
variables in the server, or perhaps have a mode in libpq to ignore all
environment variables.  Then again, maybe setting something like
PGSSLMODE globally in the server could be useful, so just removing
everything might not be the right answer.

Maybe pg_ctl should have some functionality to clear the environment,
and maybe there could be a facility in postgresql.conf to set
environment variables.

Thoughts?

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


pgsql-hackers by date:

Previous
From: Masahiko Sawada
Date:
Subject: Re: New vacuum option to do only freezing
Next
From: Amit Kapila
Date:
Subject: Re: WIP: Avoid creation of the free space map for small tables