From 71209054dc5839a81a34fd509566453284523917 Mon Sep 17 00:00:00 2001 From: Brian Cloutier Date: Wed, 4 Apr 2018 18:12:40 +0000 Subject: [PATCH] Fix cancellation of real time queries --- .../distributed/executor/multi_real_time_executor.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/backend/distributed/executor/multi_real_time_executor.c b/src/backend/distributed/executor/multi_real_time_executor.c index 067d101d3..8584737c0 100644 --- a/src/backend/distributed/executor/multi_real_time_executor.c +++ b/src/backend/distributed/executor/multi_real_time_executor.c @@ -199,6 +199,15 @@ MultiRealTimeExecute(Job *job) { MultiClientWait(waitInfo); } + +#ifdef WIN32 + /* + * Don't call CHECK_FOR_INTERRUPTS because we want to clean up after ourselves, + * calling pgwin32_dispatch_queued_signals sets QueryCancelPending so we leave + * the loop. + */ + pgwin32_dispatch_queued_signals(); +#endif } MultiClientFreeWaitInfo(waitInfo);