Re: pg_upgrade code questions

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: pg_upgrade code questions
Дата
Msg-id 201005140334.o4E3YW118110@momjian.us
обсуждение исходный текст
Ответ на Re: pg_upgrade code questions  (Takahiro Itagaki <itagaki.takahiro@oss.ntt.co.jp>)
Ответы Re: pg_upgrade code questions
Список pgsql-hackers
Takahiro Itagaki wrote:
> 
> Bruce Momjian <bruce@momjian.us> wrote:
> 
> > > >> ==== 2. extern PGDLLIMPORT ====
> > > >> pg_upgrade has own definitions of
> > > >> extern PGDLLIMPORT Oid binary_upgrade_next_xxx
> > > 
> > > > The issue here is that you use PGDLLIMPORT where you are importing the
> > > > variable, not where it is defined.  For example, look at
> > > > 'seq_page_cost'.  You can see PGDLLIMPORT used where it is imported with
> > > > 'extern', but not where is it defined.
> > > 
> > > Right.  Also we are intentionally not exposing those variables in any
> > > backend .h file, because they are not meant for general use.  So the
> > > "extern PGDLLIMPORT" isn't going to be in the main backend and has to
> > > be in pg_upgrade.  This was discussed awhile ago when we put in those
> > > variables, I believe.
> > 
> > Yes, this was discussed.
> 
> I wonder some compilers or linkers might hide unexported global variables
> from postgres.lib as if they are declared with 'static' specifiers.
> I'm especially worried about Windows and MSVC. So, if Windows testers
> can see it works, there was nothing to worry about.

Yes, none of the variables pg_upgrade is referencing are 'static', and
Magnus tested MSVC and checked MinGW compiles.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Takahiro Itagaki
Дата:
Сообщение: Re: nvarchar notation accepted?
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: List traffic