Re: [BUG] non archived WAL removed during production crash recovery

Поиск
Список
Период
Сортировка
От Kyotaro Horiguchi
Тема Re: [BUG] non archived WAL removed during production crash recovery
Дата
Msg-id 20200408.173909.874800874546158298.horikyota.ntt@gmail.com
обсуждение исходный текст
Ответ на Re: [BUG] non archived WAL removed during production crash recovery  (Jehan-Guillaume de Rorthais <jgdr@dalibo.com>)
Ответы Re: [BUG] non archived WAL removed during production crash recovery
Список pgsql-bugs
At Tue, 7 Apr 2020 17:17:36 +0200, Jehan-Guillaume de Rorthais <jgdr@dalibo.com> wrote in 
> > +/* Recovery state */
> > +typedef enum RecoveryState
> > +{
> > +    NOT_IN_RECOVERY = 0,
> > +    IN_CRASH_RECOVERY,
> > +    IN_ARCHIVE_RECOVERY
> > +} RecoveryState;

I'm not sure the complexity is required here. Are we asuume that
archive_mode can be changed before restarting?

At Thu, 2 Apr 2020 15:49:15 +0200, Jehan-Guillaume de Rorthais <jgdr@dalibo.com> wrote in 
> > Ok, so our *current* consensus seems the followings. Right?
> > 
> > - If archive_mode=off, any WAL files with .ready files are removed in
> >     crash recovery, archive recoery and standby mode.
> 
> yes

If archive_mode = off no WAL files are marked as ".ready".

> > - If archive_mode=on, WAL files with .ready files are removed only in
> >     standby mode. In crash recovery and archive recovery cases, they keep
> >     remaining and would be archived after recovery finishes (i.e., during
> >     normal processing).
> 
> yes
>
> > - If archive_mode=always, in crash recovery, archive recovery and
> >     standby mode, WAL files with .ready files are archived if WAL archiver
> >     is running.
> 
> yes

So if we assume archive_mode won't be changed after a crash before
restarting, if archive_mode = on on a standy, WAL files are not marked
as ".ready". If it is "always", WAL files that are to be archived are
marked as ".ready".  Finally, the condition reduces to:

If archiver is running, archive ".ready" files. Otherwise ignore
".ready" and just remove WAL files after use.
> 
> > That is, WAL files with .ready files are removed when either
> > archive_mode!=always in standby mode or archive_mode=off.
> 
> sounds fine to me.

That situation implies that archive_mode has been changed.  Can we
guarantee the completeness of the archive in the case?

regards.

-- 
Kyotaro Horiguchi
NTT Open Source Software Center



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

Предыдущее
От: Dmitry Dolgov
Дата:
Сообщение: Re: BUG #16325: Assert failure on partitioning by int for a textvalue with a collation
Следующее
От: PG Bug reporting form
Дата:
Сообщение: BUG #16350: pgcenter expects postgresql12-libs on postgresql 11