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

rong 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 40fa7b3  [ISSUE-3693] Memory leaks when executing select-into clauses 
(#3694)
40fa7b3 is described below

commit 40fa7b35ee6b2868974b19daab438034a69a47d4
Author: Steve Yurong Su (宇荣) <[email protected]>
AuthorDate: Fri Aug 6 23:22:32 2021 -0500

    [ISSUE-3693] Memory leaks when executing select-into clauses (#3694)
---
 .../src/main/java/org/apache/iotdb/db/cost/statistic/Operation.java | 3 ++-
 server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java | 6 ++----
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git 
a/server/src/main/java/org/apache/iotdb/db/cost/statistic/Operation.java 
b/server/src/main/java/org/apache/iotdb/db/cost/statistic/Operation.java
index b73691d..ccb2109 100644
--- a/server/src/main/java/org/apache/iotdb/db/cost/statistic/Operation.java
+++ b/server/src/main/java/org/apache/iotdb/db/cost/statistic/Operation.java
@@ -24,7 +24,8 @@ public enum Operation {
   EXECUTE_ROWS_PLAN_IN_BATCH("EXECUTE_ROWS_PLAN_IN_BATCH"),
   
EXECUTE_MULTI_TIMESERIES_PLAN_IN_BATCH("EXECUTE_MULTI_TIMESERIES_PLAN_IN_BATCH"),
   EXECUTE_RPC_BATCH_INSERT("EXECUTE_RPC_BATCH_INSERT"),
-  EXECUTE_QUERY("EXECUTE_QUERY");
+  EXECUTE_QUERY("EXECUTE_QUERY"),
+  EXECUTE_SELECT_INTO("EXECUTE_SELECT_INTO");
 
   public String getName() {
     return name;
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 6c627e7..59cff3e 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
@@ -1027,12 +1027,10 @@ public class TSServiceImpl implements TSIService.Iface {
       }
 
       return 
RpcUtils.getTSExecuteStatementResp(TSStatusCode.SUCCESS_STATUS).setQueryId(queryId);
-    } catch (Exception e) {
-      sessionManager.releaseQueryResourceNoExceptions(queryId);
-      throw e;
     } finally {
+      sessionManager.releaseQueryResourceNoExceptions(queryId);
       queryTimeManager.unRegisterQuery(queryId, queryPlan);
-      Measurement.INSTANCE.addOperationLatency(Operation.EXECUTE_QUERY, 
startTime);
+      Measurement.INSTANCE.addOperationLatency(Operation.EXECUTE_SELECT_INTO, 
startTime);
       long costTime = System.currentTimeMillis() - startTime;
       if (costTime >= config.getSlowQueryThreshold()) {
         SLOW_SQL_LOGGER.info("Cost: {} ms, sql is {}", costTime, statement);

Reply via email to