From be42015fcc7f91574775a53df9923a36fabddc60 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Fri, 9 Feb 2018 15:48:18 -0500 Subject: Clear stmt_timeout_active if we disable_all_timeouts. Otherwise, we can end up with the flag set when the timeout is actually disabled, leading to misbehavior. Commit f8e5f156b30efee5d0038b03e38735773abcb7ed introduced this bug. Reported by Peter Eisentraut. Analysis and fix by Thomas Munro, tweaked by me. Discussion: http://postgr.es/m/6a909374-2602-7136-8c70-397330a418f3@2ndquadrant.com --- src/backend/tcop/postgres.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src/backend/tcop/postgres.c') diff --git a/src/backend/tcop/postgres.c b/src/backend/tcop/postgres.c index ddc3ec860ae..6dc2095b9a7 100644 --- a/src/backend/tcop/postgres.c +++ b/src/backend/tcop/postgres.c @@ -3912,6 +3912,7 @@ PostgresMain(int argc, char *argv[], */ disable_all_timeouts(false); QueryCancelPending = false; /* second to avoid race condition */ + stmt_timeout_active = false; /* Not reading from the client anymore. */ DoingCommandRead = false; -- cgit v1.2.3