Re: [COMMITTERS] pgsql: Inline initial comparisons in TestForOldSnapshot() - Mailing list pgsql-hackers

From Kevin Grittner
Subject Re: [COMMITTERS] pgsql: Inline initial comparisons in TestForOldSnapshot()
Date
Msg-id CACjxUsP8eu+JO9ZxAeSgGJkAg+L73YC0F=hmmNLf-TKERF1dLg@mail.gmail.com
Whole thread Raw
In response to Re: [COMMITTERS] pgsql: Inline initial comparisons in TestForOldSnapshot()  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [COMMITTERS] pgsql: Inline initial comparisons in TestForOldSnapshot()  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Thu, Apr 21, 2016 at 1:45 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:

> PGDLLIMPORT is what's needed on any backend global variable that's to
> be referenced by extensions.  I already pushed a fix before noticing
> this thread.

Thanks!

Since I failed to find anything in our docs or C comments, and very
scant clues in the Wiki and list archives, about when to use
PGDLLIMPORT and PGDLLEXPORT I figured it might be helpful to
clarify here, and maybe add something near one of the definitions.

Based on your fix and the meager clues found elsewhere, along with
randomly looking at a few points of existing usage, I infer that
these should be specified from the perspective of loadable modules
which we might want to build for Windows.  That is, an extension
would use PGDLLEXPORT for symbols it wanted to have the backends
find, and core code should use PGDLLIMPORT for symbols that
extensions or other loadable modules might need to find.  These are
used for both data locations and function names.

Close?

--
Kevin Grittner
EDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Fabrízio de Royes Mello
Date:
Subject: Re: "parallel= " information is not coming in pg_dumpall for create aggregate
Next
From: Tom Lane
Date:
Subject: Re: [COMMITTERS] pgsql: Inline initial comparisons in TestForOldSnapshot()