Re: Is pg_control file crashsafe?

Поиск
Список
Период
Сортировка
От Alex Ignatov
Тема Re: Is pg_control file crashsafe?
Дата
Msg-id 5727CCF4.8070603@postgrespro.ru
обсуждение исходный текст
Ответ на Re: Is pg_control file crashsafe?  (Bruce Momjian <bruce@momjian.us>)
Ответы Re: Is pg_control file crashsafe?  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers

On 01.05.2016 0:55, Bruce Momjian wrote:
> On Thu, Apr 28, 2016 at 09:58:00PM +0000, Alex Ignatov wrote:
>> Hello everyone!
>> We have some issue with truncated pg_control file on Windows after power
>> failure.
>> My questions is :
>> 1) Is pg_control protected from say , power crash or partial write?
>> 2) How PG update pg_control? By writing in it or writing in some temp file and
>> after that rename it to pg_control to be atomic?
> We write pg_controldata in one write() OS call:
>
>      if (write(fd, buffer, PG_CONTROL_SIZE) != PG_CONTROL_SIZE)
>
>> 3) Can PG have  multiple pg_control copy to be more fault tolerant?
>>
>> PS During some experiments we found that at present time there is no any method
>> to do crash recovery with "restored" version of pg_control (based on some
>> manipulations with pg_resetxlog ).
>>   Only by using pg_resetxlog and setting it parameters to values taken from wal
>> file (pg_xlogdump)we can at least start PG and saw that PG state is at the
>> moment of last check point. But we have no real confidence that PG is in
>> consistent state(also docs on pg_resetxlogs told us about it too)
> We have talked about improving the reliability of pg_control, but
> failures are so rare we have never done anything to improve it.  I know
> Tatsuo has talked about making pg_control more reliable, so I am CC'ing
> him.
>
Oh! Good. Thank you!
It is rare but as we saw now it is our reality too. One of our customers 
had this issue on previous week =)

I think that rename can help a little bit. At least on some FS it is 
atomic operation.

-- 
Alex Ignatov
Postgres Professional: http://www.postgrespro.com
Russian Postgres Company




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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Reviewing freeze map code
Следующее
От: David Fetter
Дата:
Сообщение: Re: Naming of new tsvector functions