Re: pg13 PGDLLIMPORT list
Craig Ringer <craig@2ndquadrant.com>
From: Craig Ringer <craig@2ndquadrant.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Amit Kapila <amit.kapila16@gmail.com>,
Julien Rouhaud <rjuju123@gmail.com>, legrand legrand <legrand_legrand@hotmail.com>,
pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2020-01-21T07:07:31Z
Lists: pgsql-hackers
On Tue, 21 Jan 2020 at 12:49, Michael Paquier <michael@paquier.xyz> wrote: > > On Tue, Jan 21, 2020 at 08:34:05AM +0530, Amit Kapila wrote: > > As such no objection, but I am not sure if the other person need it on > > back branches as well. Are you planning to commit this, or if you > > want I can take care of it? > > Thanks for the reminder. Done now. I have also switched the > surrounding parameters while on it to not be inconsistent. While speaking of PGDLLIMPORT, I wrote a quick check target in the makefiles for some extensions I work on. It identified the following symbols as used by the extensions but not exported: XactLastRecEnd (xlog.h) criticalSharedRelcachesBuilt (relcache.h) hot_standby_feedback (walreceiver.h) pgstat_track_activities (pgstat.h) WalRcv (walreceiver.h) wal_receiver_status_interval (walreceiver.h) wal_retrieve_retry_interval (walreceiver.h) Of those, XactLastRecEnd is by far the most important. Failure to export pgstat_track_activities is a bug IMO, since it's exported by inline functions pgstat_report_wait_start() and pgstat_report_wait_end() in pgstat.h criticalSharedRelcachesBuilt is useful in extensions that may do genam systable_beginscan() etc in functions called both early in startup and later on. hot_standby_feedback can be worked around by reading the GUC via the config options interface. But IMO all GUC symbols should be PGDLLEXPORTed, especially since we lack an interface for extensions to read arbitrary GUC values w/o formatting to string then parsing the string. wal_receiver_status_interval and wal_retrieve_retry_interval are not that important, but again they're GUCs. Being able to see WalRcv is very useful when running extension code on a streaming physical replica, where you want to make decisions based on what's actually replicated. Anyone object to exporting these? -- Craig Ringer http://www.2ndQuadrant.com/ 2ndQuadrant - PostgreSQL Solutions for the Enterprise
Commits
-
Add GUC variables for stat tracking and timeout as PGDLLIMPORT
- dbe405b7859c 9.4.26 landed
- 4a49149b9d74 9.5.21 landed
- 9740cdbe5e35 9.6.17 landed
- 1ef7332b78f5 10.12 landed
- 7c7026bb7aa5 11.7 landed
- ef8e6b2c2ba0 12.2 landed
- 62c9b522311a 13.0 landed