This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch dev/1.3
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/dev/1.3 by this push:
new 5f6c2e628d6 [To dev/1.3] Correct Block Queue Time metric
5f6c2e628d6 is described below
commit 5f6c2e628d669ada66addf6afc9f1e39c197b4f0
Author: Jackie Tien <[email protected]>
AuthorDate: Fri Jun 20 08:17:32 2025 +0800
[To dev/1.3] Correct Block Queue Time metric
(cherry picked from commit e7d009cb725c1c030820da4415c7f08e6b742245)
---
.../queryengine/execution/fragment/FragmentInstanceContext.java | 8 ++++++++
.../iotdb/db/queryengine/execution/schedule/DriverScheduler.java | 8 --------
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
index 84797cbfad9..917e378fd66 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/fragment/FragmentInstanceContext.java
@@ -29,6 +29,7 @@ import org.apache.iotdb.db.queryengine.common.DeviceContext;
import org.apache.iotdb.db.queryengine.common.FragmentInstanceId;
import org.apache.iotdb.db.queryengine.common.QueryId;
import org.apache.iotdb.db.queryengine.common.SessionInfo;
+import org.apache.iotdb.db.queryengine.metric.DriverSchedulerMetricSet;
import org.apache.iotdb.db.queryengine.metric.QueryRelatedResourceMetricSet;
import org.apache.iotdb.db.queryengine.metric.SeriesScanCostMetricSet;
import
org.apache.iotdb.db.queryengine.plan.planner.memory.MemoryReservationManager;
@@ -62,6 +63,8 @@ import java.util.concurrent.atomic.AtomicLong;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
+import static
org.apache.iotdb.db.queryengine.metric.DriverSchedulerMetricSet.BLOCK_QUEUED_TIME;
+import static
org.apache.iotdb.db.queryengine.metric.DriverSchedulerMetricSet.READY_QUEUED_TIME;
import static
org.apache.iotdb.db.storageengine.dataregion.VirtualDataRegion.EMPTY_QUERY_DATA_SOURCE;
public class FragmentInstanceContext extends QueryContext {
@@ -750,6 +753,11 @@ public class FragmentInstanceContext extends QueryContext {
// record fragment instance execution time and metadata get time to metrics
long durationTime = System.currentTimeMillis() - executionStartTime.get();
+ DriverSchedulerMetricSet.getInstance()
+ .recordTaskQueueTime(BLOCK_QUEUED_TIME, blockQueueTime.get());
+ DriverSchedulerMetricSet.getInstance()
+ .recordTaskQueueTime(READY_QUEUED_TIME, readyQueueTime.get());
+
QueryRelatedResourceMetricSet.getInstance().updateFragmentInstanceTime(durationTime);
SeriesScanCostMetricSet.getInstance()
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverScheduler.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverScheduler.java
index 09dab3d7819..a629c151fa9 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverScheduler.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/schedule/DriverScheduler.java
@@ -43,7 +43,6 @@ import
org.apache.iotdb.db.queryengine.execution.schedule.queue.multilevelqueue.
import
org.apache.iotdb.db.queryengine.execution.schedule.queue.multilevelqueue.MultilevelPriorityQueue;
import org.apache.iotdb.db.queryengine.execution.schedule.task.DriverTask;
import
org.apache.iotdb.db.queryengine.execution.schedule.task.DriverTaskStatus;
-import org.apache.iotdb.db.queryengine.metric.DriverSchedulerMetricSet;
import
org.apache.iotdb.db.storageengine.rescon.quotas.DataNodeThrottleQuotaManager;
import org.apache.iotdb.db.utils.SetThreadName;
import org.apache.iotdb.mpp.rpc.thrift.TFragmentInstanceId;
@@ -66,15 +65,10 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.atomic.AtomicLong;
-import static
org.apache.iotdb.db.queryengine.metric.DriverSchedulerMetricSet.BLOCK_QUEUED_TIME;
-import static
org.apache.iotdb.db.queryengine.metric.DriverSchedulerMetricSet.READY_QUEUED_TIME;
-
/** The manager of fragment instances scheduling. */
public class DriverScheduler implements IDriverScheduler, IService {
private static final Logger logger =
LoggerFactory.getLogger(DriverScheduler.class);
- private static final DriverSchedulerMetricSet DRIVER_SCHEDULER_METRIC_SET =
- DriverSchedulerMetricSet.getInstance();
private static final IoTDBConfig config =
IoTDBDescriptor.getInstance().getConfig();
private static final double LEVEL_TIME_MULTIPLIER = 2;
@@ -480,7 +474,6 @@ public class DriverScheduler implements IDriverScheduler,
IService {
.getDriverContext()
.getFragmentInstanceContext()
.addBlockQueuedTime(blockQueuedTime);
- DRIVER_SCHEDULER_METRIC_SET.recordTaskQueueTime(BLOCK_QUEUED_TIME,
blockQueuedTime);
task.setLastEnterReadyQueueTime(currentTime);
task.resetLevelScheduledTime();
readyQueue.repush(task);
@@ -504,7 +497,6 @@ public class DriverScheduler implements IDriverScheduler,
IService {
.getDriverContext()
.getFragmentInstanceContext()
.addReadyQueuedTime(readyQueuedTime);
- DRIVER_SCHEDULER_METRIC_SET.recordTaskQueueTime(READY_QUEUED_TIME,
readyQueuedTime);
} finally {
task.unlock();
}