You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ozone.apache.org by ad...@apache.org on 2022/05/22 18:40:09 UTC

[ozone] branch master updated: HDDS-6784. Missing close() for two RocksDB table iterators (#3440)

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

adoroszlai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/master by this push:
     new fee0de9dd4 HDDS-6784. Missing close() for two RocksDB table iterators (#3440)
fee0de9dd4 is described below

commit fee0de9dd4babbe6dee981f119c02c14ce364f72
Author: Siyao Meng <50...@users.noreply.github.com>
AuthorDate: Sun May 22 11:40:04 2022 -0700

    HDDS-6784. Missing close() for two RocksDB table iterators (#3440)
---
 .../hadoop/hdds/scm/ha/SequenceIdGenerator.java    | 15 ++++++++-----
 .../hadoop/ozone/om/OmMetadataManagerImpl.java     | 26 ++++++++++++----------
 2 files changed, 23 insertions(+), 18 deletions(-)

diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/SequenceIdGenerator.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/SequenceIdGenerator.java
index 2333ba8eed..1b0316bbbc 100644
--- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/SequenceIdGenerator.java
+++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/SequenceIdGenerator.java
@@ -360,13 +360,16 @@ public class SequenceIdGenerator {
     // upgrade containerId
     if (sequenceIdTable.get(CONTAINER_ID) == null) {
       long largestContainerId = 0;
-      TableIterator<ContainerID, ? extends KeyValue<ContainerID, ContainerInfo>>
-          iterator = scmMetadataStore.getContainerTable().iterator();
-      while (iterator.hasNext()) {
-        ContainerInfo containerInfo = iterator.next().getValue();
-        largestContainerId
-            = Long.max(containerInfo.getContainerID(), largestContainerId);
+      try (TableIterator<ContainerID,
+          ? extends KeyValue<ContainerID, ContainerInfo>> iterator =
+          scmMetadataStore.getContainerTable().iterator()) {
+        while (iterator.hasNext()) {
+          ContainerInfo containerInfo = iterator.next().getValue();
+          largestContainerId =
+              Long.max(containerInfo.getContainerID(), largestContainerId);
+        }
       }
+
       sequenceIdTable.put(CONTAINER_ID, largestContainerId);
       LOG.info("upgrade {} to {}",
           CONTAINER_ID, sequenceIdTable.get(CONTAINER_ID));
diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OmMetadataManagerImpl.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OmMetadataManagerImpl.java
index b25f3f82c4..5523ccc8bc 100644
--- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OmMetadataManagerImpl.java
+++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OmMetadataManagerImpl.java
@@ -1290,21 +1290,23 @@ public class OmMetadataManagerImpl implements OMMetadataManager {
       }
     }
 
-    TableIterator<String, ? extends KeyValue<String, OmMultipartKeyInfo>>
-        iterator = getMultipartInfoTable().iterator();
-    iterator.seek(prefixKey);
-
-    while (iterator.hasNext()) {
-      KeyValue<String, OmMultipartKeyInfo> entry = iterator.next();
-      if (entry.getKey().startsWith(prefixKey)) {
-        // If it is marked for abort, skip it.
-        if (!aborted.contains(entry.getKey())) {
-          response.add(entry.getKey());
+    try (TableIterator<String, ? extends KeyValue<String, OmMultipartKeyInfo>>
+        iterator = getMultipartInfoTable().iterator()) {
+      iterator.seek(prefixKey);
+
+      while (iterator.hasNext()) {
+        KeyValue<String, OmMultipartKeyInfo> entry = iterator.next();
+        if (entry.getKey().startsWith(prefixKey)) {
+          // If it is marked for abort, skip it.
+          if (!aborted.contains(entry.getKey())) {
+            response.add(entry.getKey());
+          }
+        } else {
+          break;
         }
-      } else {
-        break;
       }
     }
+
     return response;
   }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@ozone.apache.org
For additional commands, e-mail: commits-help@ozone.apache.org