You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by ha...@apache.org on 2021/12/16 05:37:06 UTC

[iotdb] branch master updated: [IOTDB-2160] Fix cluster groupby memory leak (#4582)

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

haonan 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 5274c99  [IOTDB-2160] Fix cluster groupby memory leak (#4582)
5274c99 is described below

commit 5274c990f4ebe6447cd5b3f8d69f80a95c54e8e1
Author: Potato <TX...@gmail.com>
AuthorDate: Thu Dec 16 13:36:25 2021 +0800

    [IOTDB-2160] Fix cluster groupby memory leak (#4582)
---
 .../org/apache/iotdb/cluster/query/reader/ClusterReaderFactory.java  | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/cluster/src/main/java/org/apache/iotdb/cluster/query/reader/ClusterReaderFactory.java b/cluster/src/main/java/org/apache/iotdb/cluster/query/reader/ClusterReaderFactory.java
index 17a82c2..123d734 100644
--- a/cluster/src/main/java/org/apache/iotdb/cluster/query/reader/ClusterReaderFactory.java
+++ b/cluster/src/main/java/org/apache/iotdb/cluster/query/reader/ClusterReaderFactory.java
@@ -874,8 +874,6 @@ public class ClusterReaderFactory {
         }
 
         if (executorId != -1) {
-          // record the queried node to release resources later
-          ((RemoteQueryContext) context).registerRemoteNode(node, partitionGroup.getHeader());
           logger.debug(
               "{}: get an executorId {} for {}@{} from {}",
               metaGroupMember.getName(),
@@ -906,6 +904,9 @@ public class ClusterReaderFactory {
       } catch (InterruptedException e) {
         Thread.currentThread().interrupt();
         logger.error(metaGroupMember.getName() + ": Cannot query " + path + " from " + node, e);
+      } finally {
+        // record the queried node to release resources later
+        ((RemoteQueryContext) context).registerRemoteNode(node, partitionGroup.getHeader());
       }
     }
     throw new StorageEngineException(