You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hawq.apache.org by yj...@apache.org on 2017/11/08 05:03:10 UTC
incubator-hawq git commit: HAWQ-1530. Illegally killing a JDBC select
query causes locking problems
Repository: incubator-hawq
Updated Branches:
refs/heads/master 9312de04a -> 1aafa0c88
HAWQ-1530. Illegally killing a JDBC select query causes locking problems
Project: http://git-wip-us.apache.org/repos/asf/incubator-hawq/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-hawq/commit/1aafa0c8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-hawq/tree/1aafa0c8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-hawq/diff/1aafa0c8
Branch: refs/heads/master
Commit: 1aafa0c88ca8529e1b12ca2a84c692d20cc9e211
Parents: 9312de0
Author: Yi <yj...@apache.org>
Authored: Wed Nov 8 16:02:54 2017 +1100
Committer: Yi <yj...@apache.org>
Committed: Wed Nov 8 16:02:54 2017 +1100
----------------------------------------------------------------------
src/backend/cdb/dispatcher.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/1aafa0c8/src/backend/cdb/dispatcher.c
----------------------------------------------------------------------
diff --git a/src/backend/cdb/dispatcher.c b/src/backend/cdb/dispatcher.c
index 634c52a..6322871 100644
--- a/src/backend/cdb/dispatcher.c
+++ b/src/backend/cdb/dispatcher.c
@@ -59,6 +59,7 @@
#include "tcop/pquery.h" /* PortalGetResource */
#include "resourcemanager/communication/rmcomm_QD2RM.h"
+#include "storage/ipc.h"
/* Define and structure */
typedef struct DispatchTask
@@ -1414,9 +1415,12 @@ dispatch_cleanup(DispatchData *data)
if (dispatcher_is_state_error(data))
{
/* We cannot unbind executors until we retrieve error message! */
- dispatch_throw_error(data);
- Assert(false);
- return; /* should not hit */
+ if (!proc_exit_inprogress) {
+ dispatch_throw_error(data);
+ Assert(false);
+ return; /* should not hit */
+ }
+
}
dispatch_end_env(data);