This is an automated email from the ASF dual-hosted git repository.

weihao pushed a commit to branch addShowQ
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/addShowQ by this push:
     new 9369f908906 modify according review
9369f908906 is described below

commit 9369f908906ab84f168c10dd16194ae55dcaf434
Author: Weihao Li <[email protected]>
AuthorDate: Wed Mar 25 15:48:45 2026 +0800

    modify according review
    
    Signed-off-by: Weihao Li <[email protected]>
---
 .../iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java       | 1 +
 .../java/org/apache/iotdb/relational/it/schema/IoTDBDatabaseIT.java | 2 ++
 .../org/apache/iotdb/db/queryengine/common/MPPQueryContext.java     | 3 +++
 .../queryengine/execution/operator/source/ShowQueriesOperator.java  | 6 ++++--
 .../source/relational/InformationSchemaContentSupplierFactory.java  | 5 +++--
 .../apache/iotdb/db/queryengine/plan/execution/IQueryExecution.java | 1 +
 .../queryengine/plan/planner/plan/node/source/ShowQueriesNode.java  | 3 +--
 .../plan/relational/planner/informationschema/ShowQueriesTest.java  | 3 +++
 .../apache/iotdb/commons/schema/column/ColumnHeaderConstant.java    | 3 +++
 .../org/apache/iotdb/commons/schema/table/InformationSchema.java    | 3 +++
 10 files changed, 24 insertions(+), 6 deletions(-)

diff --git 
a/integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java
index ccd264fd67c..2d86a652194 100644
--- 
a/integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java
@@ -174,6 +174,7 @@ public class IoTDBMaintainAuthIT {
           "elapsed_time",
           "statement",
           "user",
+          "wait_time_in_server",
           "client_ip",
           "timeout"
         };
diff --git 
a/integration-test/src/test/java/org/apache/iotdb/relational/it/schema/IoTDBDatabaseIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/relational/it/schema/IoTDBDatabaseIT.java
index 36368d33da7..94c215a52ae 100644
--- 
a/integration-test/src/test/java/org/apache/iotdb/relational/it/schema/IoTDBDatabaseIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/relational/it/schema/IoTDBDatabaseIT.java
@@ -465,6 +465,7 @@ public class IoTDBDatabaseIT {
                   "elapsed_time,FLOAT,ATTRIBUTE,",
                   "statement,STRING,ATTRIBUTE,",
                   "user,STRING,ATTRIBUTE,",
+                  "wait_time_in_server,FLOAT,ATTRIBUTE,",
                   "client_ip,STRING,ATTRIBUTE,",
                   "timeout,INT64,ATTRIBUTE,")));
       TestUtils.assertResultSetEqual(
@@ -685,6 +686,7 @@ public class IoTDBDatabaseIT {
                   
"information_schema,queries,elapsed_time,FLOAT,ATTRIBUTE,USING,null,",
                   
"information_schema,queries,statement,STRING,ATTRIBUTE,USING,null,",
                   
"information_schema,queries,user,STRING,ATTRIBUTE,USING,null,",
+                  
"information_schema,queries,wait_time_in_server,FLOAT,ATTRIBUTE,USING,null,",
                   
"information_schema,queries,client_ip,STRING,ATTRIBUTE,USING,null,",
                   
"information_schema,queries,timeout,INT64,ATTRIBUTE,USING,null,",
                   "test,test,time,TIMESTAMP,TIME,USING,null,",
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/common/MPPQueryContext.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/common/MPPQueryContext.java
index 4eea2457b50..0294a14af25 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/common/MPPQueryContext.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/common/MPPQueryContext.java
@@ -589,6 +589,9 @@ public class MPPQueryContext implements IAuditEntity {
 
   @Override
   public String getCliHostname() {
+    if (session == null || session.getCliHostname() == null) {
+      return "UNKNOWN";
+    }
     return session.getCliHostname();
   }
 
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/ShowQueriesOperator.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/ShowQueriesOperator.java
index 7742741e796..75013c844dc 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/ShowQueriesOperator.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/ShowQueriesOperator.java
@@ -150,8 +150,10 @@ public class ShowQueriesOperator implements SourceOperator 
{
               (float) (currTime - queryExecution.getStartExecutionTime()) / 
1000);
           columnBuilders[3].writeBinary(
               
BytesUtils.valueOf(queryExecution.getExecuteSQL().orElse("UNKNOWN")));
-          
columnBuilders[4].writeBinary(BytesUtils.valueOf(queryExecution.getClientHostname()));
-          columnBuilders[5].writeLong(queryExecution.getTimeout());
+          columnBuilders[4].writeFloat(
+              (float) queryExecution.getTotalExecutionTime() / 1000_000_000);
+          
columnBuilders[5].writeBinary(BytesUtils.valueOf(queryExecution.getClientHostname()));
+          columnBuilders[6].writeLong(queryExecution.getTimeout());
           builder.declarePosition();
         }
       }
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/InformationSchemaContentSupplierFactory.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/InformationSchemaContentSupplierFactory.java
index 557117283de..d7162b03be3 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/InformationSchemaContentSupplierFactory.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/source/relational/InformationSchemaContentSupplierFactory.java
@@ -283,8 +283,9 @@ public class InformationSchemaContentSupplierFactory {
         columnBuilders[4].writeBinary(
             
BytesUtils.valueOf(queryExecution.getExecuteSQL().orElse("UNKNOWN")));
         
columnBuilders[5].writeBinary(BytesUtils.valueOf(queryExecution.getUser()));
-        
columnBuilders[6].writeBinary(BytesUtils.valueOf(queryExecution.getClientHostname()));
-        columnBuilders[7].writeLong(queryExecution.getTimeout());
+        columnBuilders[6].writeFloat((float) 
queryExecution.getTotalExecutionTime() / 1000_000_000);
+        
columnBuilders[7].writeBinary(BytesUtils.valueOf(queryExecution.getClientHostname()));
+        columnBuilders[8].writeLong(queryExecution.getTimeout());
         resultBuilder.declarePosition();
       }
       nextConsumedIndex++;
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/IQueryExecution.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/IQueryExecution.java
index 3432a139079..f754bc4b10e 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/IQueryExecution.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/IQueryExecution.java
@@ -80,6 +80,7 @@ public interface IQueryExecution {
 
   String getUser();
 
+  /** return ip for a thrift-based client, client-id for MQTT/REST client */
   String getClientHostname();
 
   boolean isDebug();
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/ShowQueriesNode.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/ShowQueriesNode.java
index 87157c1d236..1eaf122c773 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/ShowQueriesNode.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/planner/plan/node/source/ShowQueriesNode.java
@@ -33,7 +33,6 @@ import java.io.IOException;
 import java.nio.ByteBuffer;
 import java.util.List;
 import java.util.Objects;
-import java.util.stream.Collectors;
 
 import static 
org.apache.iotdb.commons.schema.column.ColumnHeaderConstant.showQueriesColumnHeaders;
 
@@ -42,7 +41,7 @@ public class ShowQueriesNode extends VirtualSourceNode {
   public static final List<String> SHOW_QUERIES_HEADER_COLUMNS =
       showQueriesColumnHeaders.stream()
           .map(ColumnHeader::getColumnName)
-          .collect(Collectors.toList());
+          .collect(ImmutableList.toImmutableList());
 
   private final String allowedUsername;
 
diff --git 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/informationschema/ShowQueriesTest.java
 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/informationschema/ShowQueriesTest.java
index 61b54fcf1c9..6226dd98627 100644
--- 
a/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/informationschema/ShowQueriesTest.java
+++ 
b/iotdb-core/datanode/src/test/java/org/apache/iotdb/db/queryengine/plan/relational/planner/informationschema/ShowQueriesTest.java
@@ -37,6 +37,7 @@ import static 
org.apache.iotdb.commons.schema.column.ColumnHeaderConstant.STATEM
 import static 
org.apache.iotdb.commons.schema.column.ColumnHeaderConstant.TIMEOUT_TABLE_MODEL;
 import static org.apache.iotdb.commons.schema.column.ColumnHeaderConstant.USER;
 import static 
org.apache.iotdb.commons.schema.column.ColumnHeaderConstant.USER_TABLE_MODEL;
+import static 
org.apache.iotdb.commons.schema.column.ColumnHeaderConstant.WAIT_TIME_IN_SERVER_TABLE_MODEL;
 import static 
org.apache.iotdb.db.queryengine.plan.relational.planner.assertions.PlanAssert.assertPlan;
 import static 
org.apache.iotdb.db.queryengine.plan.relational.planner.assertions.PlanMatchPattern.collect;
 import static 
org.apache.iotdb.db.queryengine.plan.relational.planner.assertions.PlanMatchPattern.exchange;
@@ -67,6 +68,7 @@ public class ShowQueriesTest {
                     ELAPSED_TIME_TABLE_MODEL,
                     STATEMENT_TABLE_MODEL,
                     USER_TABLE_MODEL,
+                    WAIT_TIME_IN_SERVER_TABLE_MODEL,
                     CLIENT_IP,
                     TIMEOUT_TABLE_MODEL))));
 
@@ -147,6 +149,7 @@ public class ShowQueriesTest {
                         ELAPSED_TIME_TABLE_MODEL,
                         STATEMENT.toLowerCase(Locale.ENGLISH),
                         USER.toLowerCase(Locale.ENGLISH),
+                        WAIT_TIME_IN_SERVER_TABLE_MODEL,
                         CLIENT_IP,
                         TIMEOUT_TABLE_MODEL)))));
   }
diff --git 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/column/ColumnHeaderConstant.java
 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/column/ColumnHeaderConstant.java
index 74e161f758f..33f56cdefe9 100644
--- 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/column/ColumnHeaderConstant.java
+++ 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/column/ColumnHeaderConstant.java
@@ -212,6 +212,7 @@ public class ColumnHeaderConstant {
   public static final String QUERY_ID = "QueryId";
   public static final String ELAPSED_TIME = "ElapsedTime";
   public static final String STATEMENT = "Statement";
+  public static final String WAIT_TIME_IN_SERVER = "WaitTimeInServer";
   public static final String CLIENT_IP_TREE_MODEL = "ClientIp";
   public static final String TIMEOUT = "Timeout";
 
@@ -227,6 +228,7 @@ public class ColumnHeaderConstant {
   public static final String DATA_NODE_ID_TABLE_MODEL = "datanode_id";
   public static final String START_TIME_TABLE_MODEL = "start_time";
   public static final String ELAPSED_TIME_TABLE_MODEL = "elapsed_time";
+  public static final String WAIT_TIME_IN_SERVER_TABLE_MODEL = 
"wait_time_in_server";
   public static final String TIMEOUT_TABLE_MODEL = "timeout";
 
   // column names for current_queries and queries_costs_histogram
@@ -652,6 +654,7 @@ public class ColumnHeaderConstant {
           new ColumnHeader(DATA_NODE_ID, TSDataType.INT32),
           new ColumnHeader(ELAPSED_TIME, TSDataType.FLOAT),
           new ColumnHeader(STATEMENT, TSDataType.STRING),
+          new ColumnHeader(WAIT_TIME_IN_SERVER, TSDataType.FLOAT),
           new ColumnHeader(CLIENT_IP_TREE_MODEL, TSDataType.STRING),
           new ColumnHeader(TIMEOUT, TSDataType.INT64));
 
diff --git 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InformationSchema.java
 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InformationSchema.java
index 454267dbc9f..98bf4a9a830 100644
--- 
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InformationSchema.java
+++ 
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/schema/table/InformationSchema.java
@@ -78,6 +78,9 @@ public class InformationSchema {
         new AttributeColumnSchema(ColumnHeaderConstant.STATEMENT_TABLE_MODEL, 
TSDataType.STRING));
     queriesTable.addColumnSchema(
         new AttributeColumnSchema(ColumnHeaderConstant.USER_TABLE_MODEL, 
TSDataType.STRING));
+    queriesTable.addColumnSchema(
+        new AttributeColumnSchema(
+            ColumnHeaderConstant.WAIT_TIME_IN_SERVER_TABLE_MODEL, 
TSDataType.FLOAT));
     queriesTable.addColumnSchema(
         new AttributeColumnSchema(ColumnHeaderConstant.CLIENT_IP, 
TSDataType.STRING));
     queriesTable.addColumnSchema(

Reply via email to