This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 4136802f214 Stop generating FilterExpression if we don't specify the
time filter in last query session api
4136802f214 is described below
commit 4136802f2142c000f8b95fceb525d67e50fa0780
Author: Jackie Tien <[email protected]>
AuthorDate: Mon Aug 7 08:19:52 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;