From a411cc302f930bf95b907b6da67e8d939be9c028 Mon Sep 17 00:00:00 2001 From: kenxx Date: Tue, 20 Dec 2022 16:35:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E7=BD=AEImmediateInterruptOK=E7=A1=AE?= =?UTF-8?q?=E4=BF=9DWLM=E7=BA=BF=E7=A8=8B=E5=9C=A8PQconnect=E6=97=A0?= =?UTF-8?q?=E5=93=8D=E5=BA=94=E6=97=B6=E4=B9=9F=E8=83=BD=E6=AD=A3=E5=B8=B8?= =?UTF-8?q?=E8=A2=AB=E5=85=B3=E9=97=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/gausskernel/cbb/workload/statctl.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/gausskernel/cbb/workload/statctl.cpp b/src/gausskernel/cbb/workload/statctl.cpp index 2150d4963f..ea02aff258 100644 --- a/src/gausskernel/cbb/workload/statctl.cpp +++ b/src/gausskernel/cbb/workload/statctl.cpp @@ -1880,8 +1880,12 @@ void WLMReadjustUserSpaceByQuery(const char* username, List* database_name_list) isFirstDb ? "true" : "false"); securec_check_ss(rc, "\0", "\0"); isFirstDb = false; - + bool old = t_thrd.int_cxt.ImmediateInterruptOK; + /*Allow cancel/die interrupts because the connection might be stucked forever*/ + t_thrd.int_cxt.ImmediateInterruptOK = true; + CHECK_FOR_INTERRUPTS(); pgConn = PQconnectdb(conninfo); + t_thrd.int_cxt.ImmediateInterruptOK = old; if (PQstatus(pgConn) != CONNECTION_OK) { ereport(WARNING, (errcode(ERRCODE_CONNECTION_TIMED_OUT), -- Gitee