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

sodonnel 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 48d1c2f398c HDDS-16202. Avoid the list copy in 
ContainerEndpoint.getBlocks (#11038)
48d1c2f398c is described below

commit 48d1c2f398c70b469e992aa30c080679757fbdc9
Author: Mark Tsai <[email protected]>
AuthorDate: Thu Aug 20 19:48:28 2026 +0800

    HDDS-16202. Avoid the list copy in ContainerEndpoint.getBlocks (#11038)
---
 .../hadoop/ozone/recon/api/ContainerEndpoint.java       | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git 
a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/api/ContainerEndpoint.java
 
b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/api/ContainerEndpoint.java
index b7306b854df..5c1ec5fe0fa 100644
--- 
a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/api/ContainerEndpoint.java
+++ 
b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/api/ContainerEndpoint.java
@@ -745,14 +745,15 @@ private List<ContainerBlockMetadata> getBlocks(
       List<OmKeyLocationInfoGroup> matchedKeys, long containerID) {
     List<ContainerBlockMetadata> blockIds = new ArrayList<>();
     for (OmKeyLocationInfoGroup omKeyLocationInfoGroup : matchedKeys) {
-      List<OmKeyLocationInfo> omKeyLocationInfos = omKeyLocationInfoGroup
-          .getLocationList()
-          .stream()
-          .filter(c -> c.getContainerID() == containerID)
-          .collect(Collectors.toList());
-      for (OmKeyLocationInfo omKeyLocationInfo : omKeyLocationInfos) {
-        blockIds.add(new ContainerBlockMetadata(omKeyLocationInfo
-            .getContainerID(), omKeyLocationInfo.getLocalID()));
+      for (List<OmKeyLocationInfo> omKeyLocationInfos :
+          omKeyLocationInfoGroup.getLocationLists()) {
+        for (OmKeyLocationInfo omKeyLocationInfo : omKeyLocationInfos) {
+          if (omKeyLocationInfo.getContainerID() == containerID) {
+            blockIds.add(new ContainerBlockMetadata(
+                omKeyLocationInfo.getContainerID(),
+                omKeyLocationInfo.getLocalID()));
+          }
+        }
       }
     }
     return blockIds;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to