Question about pg_control usage

Поиск
Список
Период
Сортировка
От Anastasia Lubennikova
Тема Question about pg_control usage
Дата
Msg-id d17cd931-b90d-c1b0-63cd-c0a85fecbe08@postgrespro.ru
обсуждение исходный текст
Ответы Re: Question about pg_control usage  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Question about pg_control usage  (Jeff Janes <jeff.janes@gmail.com>)
Список pgsql-hackers
Hi, hackers!

I am examining various global variables in ShmemVariableCache,
pg_control and pg_controldata.  To force and debug xid wraparound,
I've implemented a function, that allows to set nextXid value in control
file manually, but it doesn't work as expected.

After an investigation I found that, while loading global variables in 
StartupXlog()
we read checkPoint location from ControlFile, and then read all the 
information
from the checkPoint record. And never ever use nextXid stored in 
ControlFile.

What is the purpose of having CheckPoint stored in control file then?
I thought, that it allows us to start up server after correct shutdown
without any xlog, as said in the comment in pg_control.h
 * Body of CheckPoint XLOG records.  This is declared here because we keep * a copy of the latest one in pg_control for
possibledisaster recovery. * Changing this struct requires a PG_CONTROL_VERSION bump.
 

But as far as I see, we never use this data.

Could you please explain, why don't we use information from control file
in StartapXlog()?

-- 
Anastasia Lubennikova
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company




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

Предыдущее
От: Stephen Frost
Дата:
Сообщение: Re: pg_dump getBlobs query broken for 7.3 servers
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Is it time to kill support for very old servers?