You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ja...@apache.org on 2023/04/28 09:23:31 UTC
[iotdb] branch rel/1.1 updated: [To rel/1.1][IOTDB-5832] Fix Bug: The size of readyQueue is negative incorrectly
This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch rel/1.1
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/rel/1.1 by this push:
new 34754f1e578 [To rel/1.1][IOTDB-5832] Fix Bug: The size of readyQueue is negative incorrectly
34754f1e578 is described below
commit 34754f1e578a031582f66f28599bea208e42a0c0
Author: Xiangwei Wei <34...@users.noreply.github.com>
AuthorDate: Fri Apr 28 17:23:25 2023 +0800
[To rel/1.1][IOTDB-5832] Fix Bug: The size of readyQueue is negative incorrectly
---
.../iotdb/db/mpp/execution/schedule/queue/IndexedBlockingQueue.java | 1 +
.../schedule/queue/multilevelqueue/MultilevelPriorityQueue.java | 4 ++--
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/queue/IndexedBlockingQueue.java b/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/queue/IndexedBlockingQueue.java
index 6fdcbb03920..d219571b44c 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/queue/IndexedBlockingQueue.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/queue/IndexedBlockingQueue.java
@@ -104,6 +104,7 @@ public abstract class IndexedBlockingQueue<E extends IDIndexedAccessible> {
return null;
}
size--;
+ Preconditions.checkState(size >= 0, "The size of readyQueue cannot be negative.");
return output;
}
diff --git a/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/queue/multilevelqueue/MultilevelPriorityQueue.java b/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/queue/multilevelqueue/MultilevelPriorityQueue.java
index 2c5bc41fa17..529dd95cfb5 100644
--- a/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/queue/multilevelqueue/MultilevelPriorityQueue.java
+++ b/server/src/main/java/org/apache/iotdb/db/mpp/execution/schedule/queue/multilevelqueue/MultilevelPriorityQueue.java
@@ -157,10 +157,10 @@ public class MultilevelPriorityQueue extends IndexedBlockingReserveQueue<DriverT
checkArgument(driverTask != null, "driverTask is null");
for (PriorityQueue<DriverTask> level : levelWaitingSplits) {
if (level.remove(driverTask)) {
- break;
+ return driverTask;
}
}
- return driverTask;
+ return null;
}
@Override