Re: Is pg_control file crashsafe?

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: Is pg_control file crashsafe?
Дата
Msg-id 20160430215508.GC556@momjian.us
обсуждение исходный текст
Ответ на Is pg_control file crashsafe?  (Alex Ignatov <a.ignatov@postgrespro.ru>)
Ответы Re: Is pg_control file crashsafe?  (Alex Ignatov <a.ignatov@postgrespro.ru>)
Список pgsql-hackers
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.

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

+ As you are, so once was I. As I am, so you will be. +
+                     Ancient Roman grave inscription +



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

Предыдущее
От: Oleg Bartunov
Дата:
Сообщение: Re: Html parsing and inline elements
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: Windows 7, Visual Studio 2010: building PgAdmin3