Re: statement_timeout has no effect if sync standby is unavailable - Mailing list pgsql-admin

From Nikhil Shetty
Subject Re: statement_timeout has no effect if sync standby is unavailable
Date
Msg-id CAFpL5VywKn-0_2qnSS=hUAnQx-ZRKZWDgyf81jzCPWD7cSN+EA@mail.gmail.com
Whole thread Raw
In response to Re: statement_timeout has no effect if sync standby is unavailable  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-admin
Got it but in my second scenario there was no sync standby

We froze the data mount point and ran queries and all of them were hung. It is waiting for WalWrite - in this case, can it not timeout without committing?

We used statement_timeout of 2s for testing 

Thanks,
Nikhil

On Thu, 2 Nov 2023 at 21:38, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Nikhil Shetty <nikhil.dba04@gmail.com> writes:
> I need to check the process state but statement_timeout should timeout such
> queries, no?

No, I don't think that should be the policy, and if it doesn't do so
now I'm content to leave it like that.  Once we have committed locally
and started to wait for a sync standby, we are between a rock and a
hard place: we can't back out the commit.  If we were to allow a
timeout error to occur, we'd have a choice of reporting that the
commit failed (a lie) or that it succeeded (also a lie, given that
the promise of sync commit is that we don't report commit until it's
persisted on the standby too).  Neither of these are preferable to
ignoring the timeout.

tl;dr: if your standby is not 100% reliable, enabling sync standby
is a poor choice.

                        regards, tom lane

pgsql-admin by date:

Previous
From: "Sacha Kerres"
Date:
Subject: Re: How to _not_ save startup options in postmaster.opts?
Next
From: Tom Lane
Date:
Subject: Re: How to _not_ save startup options in postmaster.opts?