Re: fsync-pgdata-on-recovery tries to write to more files than previously

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: fsync-pgdata-on-recovery tries to write to more files than previously
Дата
Msg-id 20150524005245.GD32396@alap3.anarazel.de
обсуждение исходный текст
Ответ на Re: fsync-pgdata-on-recovery tries to write to more files than previously  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: fsync-pgdata-on-recovery tries to write to more files than previously  (Christoph Berg <myon@debian.org>)
Список pgsql-hackers
On 2015-05-23 16:33:29 -0400, Tom Lane wrote:
> Christoph Berg <myon@debian.org> writes:
> > the new fsync-pgdata-on-recovery code tries to open all files using
> > O_RDWR. At least on 9.1, this can make recovery fail:
> 
> Hm.  I wonder whether it would be all right to just skip files for which
> we get EPERM on open().  The argument being that if we can't write to the
> file, we should not be held responsible for fsync'ing it either.  But
> I'm not sure whether EPERM would be the only relevant errno, or whether
> there are cases where this would mask real problems.

We could even try doing the a fsync with a readonly fd as a fallback,
but that's also pretty hacky.

How about, to avoid masking actual problems, we have a more
differentiated logic for the toplevel data directory? I think we could
just skip all non-directory files in there data_directory itself. None
of the files in the toplevel directory, with the exception of
postgresql.auto.conf, will ever get written to by PG itself.  And if
there's readonly files somewhere in a subdirectory, I won't feel
particularly bad.

Greetings,

Andres Freund



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

Предыдущее
От: Noah Misch
Дата:
Сообщение: Re: RFC: Non-user-resettable SET SESSION AUTHORISATION
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: Run pgindent now?