Re: Hot Standby and query cancel
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: pgsql-hackers@postgresql.org
Cc: Simon Riggs <simon@2ndquadrant.com>, Joachim Wieland <joe@mcknight.de>, Tom Lane <tgl@sss.pgh.pa.us>, Fujii Masao <masao.fujii@gmail.com>
Date: 2010-01-14T23:41:05Z
Lists: pgsql-hackers
On Thursday 14 January 2010 13:21:07 Simon Riggs wrote: > On Wed, 2010-01-13 at 19:23 +0000, Simon Riggs wrote: > > On Wed, 2010-01-13 at 19:58 +0100, Andres Freund wrote: > > > > I am still testing patch, so should be confident to commit tomorrow > > > > barring issues. > > > > > > I have only looked at briefly because right now I dont have the time > > > (going to eat at a friends place...) but I think I spotted an issue: > > > The IsAbortedTransactionBlockState() check in RecoveryConflictInterrupt > > > is not correct right now because that returns true for TBLOCK_SUBABORT > > > as well. Wouldnt that mess with the case where were in a failed > > > subxact and then rollback only that subxact? > > > > Well spotted, yes. > > Latest version of same patch, but uses conflict reasons passed-thru > directly from recovery to backend. > > Please review, no commit before tomorrow. I only noted a tiny thing (which was present earlier on): snprintf(waitactivitymsg, sizeof(waitactivitymsg), "waiting for max_standby_delay (%u ms)", MaxStandbyDelay); in ResolveRecoveryConflictWithVirtualXIDs. Shouldnt that be seconds? Otherwise the check in WaitExceedsMaxStandbyDelay is wrong... Andres