This is an automated email from the ASF dual-hosted git repository. jiangtian pushed a commit to branch fix_separate_data_query in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git
commit 80bb7cc61489ef1f00a0bb910a2010fd03b236e5 Author: jt2594838 <[email protected]> AuthorDate: Wed Dec 18 20:54:33 2019 +0800 divide queryId generation into data query and non-data query --- .../apache/iotdb/db/query/control/QueryResourceManager.java | 6 ++++-- .../main/java/org/apache/iotdb/db/service/TSServiceImpl.java | 10 +++++----- .../apache/iotdb/db/integration/IoTDBSequenceDataQueryIT.java | 6 +++--- .../org/apache/iotdb/db/integration/IoTDBSeriesReaderIT.java | 8 ++++---- .../test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java | 2 +- .../java/org/apache/iotdb/session/utils/EnvironmentUtils.java | 4 ++-- .../test/scala/org/apache/iotdb/spark/db/EnvironmentUtils.java | 4 ++-- 7 files changed, 21 insertions(+), 19 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/query/control/QueryResourceManager.java b/server/src/main/java/org/apache/iotdb/db/query/control/QueryResourceManager.java index c774950..94aa453 100644 --- a/server/src/main/java/org/apache/iotdb/db/query/control/QueryResourceManager.java +++ b/server/src/main/java/org/apache/iotdb/db/query/control/QueryResourceManager.java @@ -64,9 +64,11 @@ public class QueryResourceManager { * Register a new query. When a query request is created firstly, this method must * be invoked. */ - public long assignQueryId() { + public long assignQueryId(boolean isDataQuery) { long queryId = queryIdAtom.incrementAndGet(); - filePathsManager.addQueryId(queryId); + if (isDataQuery) { + filePathsManager.addQueryId(queryId); + } return queryId; } diff --git a/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java b/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java index 9d577c4..f308cad 100644 --- a/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java +++ b/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java @@ -639,7 +639,7 @@ public class TSServiceImpl implements TSIService.Iface, ServerContext { } // else default ignoreTimeStamp is false resp.setOperationType(plan.getOperatorType().toString()); // generate the queryId for the operation - long queryId = generateQueryId(); + long queryId = generateQueryId(true); // put it into the corresponding Set statementId2QueryId.computeIfAbsent(statementId, k -> new HashSet<>()).add(queryId); @@ -905,7 +905,7 @@ public class TSServiceImpl implements TSIService.Iface, ServerContext { status = executePlan(plan); TSExecuteStatementResp resp = getTSExecuteStatementResp(status); - long queryId = generateQueryId(); + long queryId = generateQueryId(false); resp.setQueryId(queryId); return resp; } @@ -1039,7 +1039,7 @@ public class TSServiceImpl implements TSIService.Iface, ServerContext { plan = (InsertPlan) queryId2Plan.get(req.getQueryId()); queryId = req.getQueryId(); } else { - queryId = generateQueryId(); + queryId = generateQueryId(false); plan = new InsertPlan(); queryId2Plan.put(queryId, plan); } @@ -1313,8 +1313,8 @@ public class TSServiceImpl implements TSIService.Iface, ServerContext { : getStatus(TSStatusCode.EXECUTE_STATEMENT_ERROR); } - private long generateQueryId() { - return QueryResourceManager.getInstance().assignQueryId(); + private long generateQueryId(boolean isDataQuery) { + return QueryResourceManager.getInstance().assignQueryId(isDataQuery); } } diff --git a/server/src/test/java/org/apache/iotdb/db/integration/IoTDBSequenceDataQueryIT.java b/server/src/test/java/org/apache/iotdb/db/integration/IoTDBSequenceDataQueryIT.java index ef83e34..7d59c56 100644 --- a/server/src/test/java/org/apache/iotdb/db/integration/IoTDBSequenceDataQueryIT.java +++ b/server/src/test/java/org/apache/iotdb/db/integration/IoTDBSequenceDataQueryIT.java @@ -175,7 +175,7 @@ public class IoTDBSequenceDataQueryIT { queryExpression.addSelectedPath(new Path(Constant.d1s1)); queryExpression.setExpression(null); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); QueryDataSet queryDataSet = engineExecutor.query(queryExpression, TEST_QUERY_CONTEXT); @@ -200,7 +200,7 @@ public class IoTDBSequenceDataQueryIT { GlobalTimeExpression globalTimeExpression = new GlobalTimeExpression(TimeFilter.gtEq(800L)); queryExpression.setExpression(globalTimeExpression); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); QueryDataSet queryDataSet = engineExecutor.query(queryExpression, TEST_QUERY_CONTEXT); @@ -236,7 +236,7 @@ public class IoTDBSequenceDataQueryIT { ValueFilter.gtEq(14)); queryExpression.setExpression(singleSeriesExpression); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); QueryDataSet queryDataSet = engineExecutor.query(queryExpression, TEST_QUERY_CONTEXT); diff --git a/server/src/test/java/org/apache/iotdb/db/integration/IoTDBSeriesReaderIT.java b/server/src/test/java/org/apache/iotdb/db/integration/IoTDBSeriesReaderIT.java index 6f68027..835d9fb 100644 --- a/server/src/test/java/org/apache/iotdb/db/integration/IoTDBSeriesReaderIT.java +++ b/server/src/test/java/org/apache/iotdb/db/integration/IoTDBSeriesReaderIT.java @@ -246,7 +246,7 @@ public class IoTDBSeriesReaderIT { queryExpression.addSelectedPath(new Path(Constant.d1s1)); queryExpression.setExpression(null); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); QueryDataSet queryDataSet = engineExecutor.query(queryExpression, TEST_QUERY_CONTEXT); @@ -274,7 +274,7 @@ public class IoTDBSeriesReaderIT { ValueFilter.gtEq(20)); queryExpression.setExpression(singleSeriesExpression); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); QueryDataSet queryDataSet = engineExecutor.query(queryExpression, TEST_QUERY_CONTEXT); @@ -302,7 +302,7 @@ public class IoTDBSeriesReaderIT { SingleSeriesExpression expression = new SingleSeriesExpression(path, TimeFilter.gt(22987L)); queryExpression.setExpression(expression); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); QueryDataSet queryDataSet = engineExecutor.query(queryExpression, TEST_QUERY_CONTEXT); @@ -331,7 +331,7 @@ public class IoTDBSeriesReaderIT { ValueFilter.lt(111)); queryExpression.setExpression(singleSeriesExpression); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); QueryDataSet queryDataSet = engineExecutor.query(queryExpression, TEST_QUERY_CONTEXT); diff --git a/server/src/test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java b/server/src/test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java index f71b8f3..9d57edf 100644 --- a/server/src/test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java +++ b/server/src/test/java/org/apache/iotdb/db/utils/EnvironmentUtils.java @@ -164,7 +164,7 @@ public class EnvironmentUtils { MultiFileLogNodeManager.getInstance().start(); FlushManager.getInstance().start(); MergeManager.getINSTANCE().start(); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); } diff --git a/session/src/test/java/org/apache/iotdb/session/utils/EnvironmentUtils.java b/session/src/test/java/org/apache/iotdb/session/utils/EnvironmentUtils.java index f9ff1fa..3afad08 100644 --- a/session/src/test/java/org/apache/iotdb/session/utils/EnvironmentUtils.java +++ b/session/src/test/java/org/apache/iotdb/session/utils/EnvironmentUtils.java @@ -58,7 +58,7 @@ public class EnvironmentUtils { private static IoTDBConfig config = IoTDBDescriptor.getInstance().getConfig(); private static DirectoryManager directoryManager = DirectoryManager.getInstance(); - private static long TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + private static long TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); private static QueryContext TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); private static long oldTsFileThreshold = config.getTsFileSizeThreshold(); @@ -160,7 +160,7 @@ public class EnvironmentUtils { StorageEngine.getInstance().reset(); MultiFileLogNodeManager.getInstance().start(); FlushManager.getInstance().start(); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); } diff --git a/spark-iotdb-connector/src/test/scala/org/apache/iotdb/spark/db/EnvironmentUtils.java b/spark-iotdb-connector/src/test/scala/org/apache/iotdb/spark/db/EnvironmentUtils.java index ac002eb..b96697d 100644 --- a/spark-iotdb-connector/src/test/scala/org/apache/iotdb/spark/db/EnvironmentUtils.java +++ b/spark-iotdb-connector/src/test/scala/org/apache/iotdb/spark/db/EnvironmentUtils.java @@ -93,7 +93,7 @@ public class EnvironmentUtils { private static IoTDBConfig config = IoTDBDescriptor.getInstance().getConfig(); private static DirectoryManager directoryManager = DirectoryManager.getInstance(); - public static long TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + public static long TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); public static QueryContext TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); private static long oldTsFileThreshold = config.getTsFileSizeThreshold(); @@ -195,7 +195,7 @@ public class EnvironmentUtils { StorageEngine.getInstance().reset(); MultiFileLogNodeManager.getInstance().start(); FlushManager.getInstance().start(); - TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(); + TEST_QUERY_JOB_ID = QueryResourceManager.getInstance().assignQueryId(true); TEST_QUERY_CONTEXT = new QueryContext(TEST_QUERY_JOB_ID); }
