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

From: Jehan-Guillaume de Rorthais <jgdr(at)dalibo(dot)com>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>, masao(dot)fujii(at)oss(dot)nttdata(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: [BUG] non archived WAL removed during production crash recovery
Date: 2020-04-20 12:22:35
Message-ID: 20200420142235.1536a73b@firost
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs pgsql-hackers

On Mon, 20 Apr 2020 16:34:44 +0900
Michael Paquier <michael(at)paquier(dot)xyz> wrote:
[...]
> > By the way I noticed that RecoveryState is exactly a subset of
> > DBState. And changes of SharedRecoveryState happens side-by-side with
> > ControlFileData->state in most places. Coundn't we just usee
> > ControlFile->state instead of SharedRecoveryState?
>
> I actually found confusing to use the same thing, because then the
> reader would thing that SharedRecoveryState could be set to more
> values but we don't want that.

I thought about this while studying various possible fix.

https://www.postgresql.org/message-id/flat/20200401181735.11100908%40firost#6192afba4e4549b8d9bac03168bad46b

The problem is that we would have to read the controldata file each time we
wonder if a segment should be archived/removed. Moreover, the controldata
file might not be in sync quickly enough with the real state for some other
code path or futur needs.

[...]
> Attached is an updated patch, where I tweaked more comments.
>
> Jehan-Guillaume, who is your colleague who found originally about this
> problem? We should credit him in the commit message.

Indeed, Benoît Lobréau reported this behavior to me.

Regards,

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Bert Brezel 2020-04-20 13:20:44 Re: BUG #16341: Installation with EnterpriseDB Community installer in NT AUTHORITY\SYSTEM context not possible
Previous Message Sandeep Thakkar 2020-04-20 09:11:22 Re: BUG #16364: ICACLS error when installing under system context "NT AUTHORITY\SYSTEM" ie installing with SCCM

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Kapila 2020-04-20 12:49:50 Re: design for parallel backup
Previous Message Fujii Masao 2020-04-20 11:38:36 Re: It is not documented that pg_promote can exit standby mode