From: | Michael Paquier <michael(at)paquier(dot)xyz> |
---|---|
To: | Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com> |
Cc: | nathandbossart(at)gmail(dot)com, pgsql-hackers(at)lists(dot)postgresql(dot)org, masao(dot)fujii(at)oss(dot)nttdata(dot)com |
Subject: | Re: Possible corruption by CreateRestartPoint at promotion |
Date: | 2022-05-16 03:47:29 |
Message-ID: | YoHJUSht3ulTO/z1@paquier.xyz |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, May 09, 2022 at 09:24:06AM +0900, Michael Paquier wrote:
> Okay, applied this one on HEAD after going back-and-forth on it for
> the last couple of days. I have found myself shaping the patch in
> what looks like its simplest form, by applying the check based on an
> older checkpoint to all the fields updated in the control file, with
> the check on DB_IN_ARCHIVE_RECOVERY applying to the addition of
> DB_SHUTDOWNED_IN_RECOVERY (got initialially surprised that this was
> having side effects on pg_rewind) and the minRecoveryPoint
> calculations.
It took me some time to make sure that this would be safe, but done
now for all the stable branches.
> Now, it would be nice to get a test for this stuff, and we are going
> to need something cheaper than what's been proposed upthread. This
> comes down to the point of being able to put a deterministic stop
> in a restart point while it is processing, meaning that we need to
> interact with one of the internal routines of CheckPointGuts(). One
> fancy way to do so would be to forcibly take a LWLock to stuck the
> restart point until it is released. Using a SQL function for that
> would be possible, if not artistic. Perhaps we don't need such a
> function though, if we could stuck arbitrarily the internals of a
> checkpoint? Any ideas?
One thing that we could do here is to resurrect the patch that adds
support for stop points in the code..
--
Michael
From | Date | Subject | |
---|---|---|---|
Next Message | David Rowley | 2022-05-16 04:10:54 | Re: strange slow query - lost lot of time somewhere |
Previous Message | Japin Li | 2022-05-16 03:45:35 | Re: Backends stunk in wait event IPC/MessageQueueInternal |