This is an automated email from the ASF dual-hosted git repository. jackietien pushed a commit to branch ca_performance in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 66cb36d2edde039f15f2ee7cf0d4d7a2ea6894f8 Author: JackieTien97 <[email protected]> AuthorDate: Sun Aug 6 15:08:26 2023 +0800 Stop generating FilterExpression if we don't specify the time filter in last query session api --- .../protocol/thrift/impl/ClientRPCServiceImpl.java | 2 +- .../queryengine/plan/parser/StatementGenerator.java | 21 ++++++++++++--------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/ClientRPCServiceImpl.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/ClientRPCServiceImpl.java index a13f54c5d8f..06d2505dcac 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/ClientRPCServiceImpl.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/protocol/thrift/impl/ClientRPCServiceImpl.java @@ -952,7 +952,7 @@ public class ClientRPCServiceImpl implements IClientRPCServiceWithHandler { paths.add(req.deviceId + "." + sensor); } TSLastDataQueryReq tsLastDataQueryReq = - new TSLastDataQueryReq(req.sessionId, paths, 0, req.statementId); + new TSLastDataQueryReq(req.sessionId, paths, Long.MIN_VALUE, req.statementId); tsLastDataQueryReq.setFetchSize(req.fetchSize); tsLastDataQueryReq.setEnableRedirectQuery(req.enableRedirectQuery); tsLastDataQueryReq.setLegalPathNodes(req.legalPathNodes); diff --git a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/parser/StatementGenerator.java b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/parser/StatementGenerator.java index 8a2e98d3be2..74cb4fb8aa2 100644 --- a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/parser/StatementGenerator.java +++ b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/parser/StatementGenerator.java @@ -197,18 +197,21 @@ public class StatementGenerator { new ResultColumn( new TimeSeriesOperand(new PartialPath("", false)), ResultColumn.ColumnType.RAW)); - // set query filter - WhereCondition whereCondition = new WhereCondition(); - GreaterEqualExpression predicate = - new GreaterEqualExpression( - new TimestampOperand(), - new ConstantOperand(TSDataType.INT64, Long.toString(lastDataQueryReq.getTime()))); - whereCondition.setPredicate(predicate); - QueryStatement lastQueryStatement = new QueryStatement(); + + if (lastDataQueryReq.getTime() != Long.MIN_VALUE) { + // set query filter + WhereCondition whereCondition = new WhereCondition(); + GreaterEqualExpression predicate = + new GreaterEqualExpression( + new TimestampOperand(), + new ConstantOperand(TSDataType.INT64, Long.toString(lastDataQueryReq.getTime()))); + whereCondition.setPredicate(predicate); + lastQueryStatement.setWhereCondition(whereCondition); + } + lastQueryStatement.setSelectComponent(selectComponent); lastQueryStatement.setFromComponent(fromComponent); - lastQueryStatement.setWhereCondition(whereCondition); PERFORMANCE_OVERVIEW_METRICS.recordParseCost(System.nanoTime() - startTime); return lastQueryStatement;
