You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by pa...@apache.org on 2023/06/29 07:35:34 UTC
[doris] branch master updated: [Bug](pipeline) do not call cancelPlanFragmentAsync when instance finished (#21193)
This is an automated email from the ASF dual-hosted git repository.
panxiaolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new a518ea5063 [Bug](pipeline) do not call cancelPlanFragmentAsync when instance finished (#21193)
a518ea5063 is described below
commit a518ea50639d401946a83ad7e7cccb3d7ca8a234
Author: Pxl <px...@qq.com>
AuthorDate: Thu Jun 29 15:35:23 2023 +0800
[Bug](pipeline) do not call cancelPlanFragmentAsync when instance finished (#21193)
do not call cancelPlanFragmentAsync when instance finished
---
fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java b/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java
index a14f25ca96..d4f78b0d91 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/Coordinator.java
@@ -2788,9 +2788,13 @@ public class Coordinator {
this.initiated, this.done, this.hasCanceled, backend.getId(),
DebugUtil.printId(localParam.fragment_instance_id), cancelReason.name());
}
- if (fragmentInstancesMap.get(localParam.fragment_instance_id).getIsCancel()) {
+
+ RuntimeProfile profile = fragmentInstancesMap.get(localParam.fragment_instance_id);
+ if (profile.getIsDone() || profile.getIsCancel()) {
continue;
}
+
+ this.hasCanceled = true;
try {
Span span = ConnectContext.get() != null
? ConnectContext.get().getTracer().spanBuilder("cancelPlanFragmentAsync")
@@ -2812,7 +2816,10 @@ public class Coordinator {
return false;
}
}
- this.hasCanceled = true;
+ if (!this.hasCanceled) {
+ return false;
+ }
+
for (int i = 0; i < this.numInstances; i++) {
fragmentInstancesMap.get(rpcParams.local_params.get(i).fragment_instance_id).setIsCancel(true);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org