You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ozone.apache.org by so...@apache.org on 2022/03/15 22:00:36 UTC

[ozone] branch HDDS-3816-ec updated: HDDS-6413. EC: OzoneManagerRequestHandler needs to handle ECReplicationConfig (#3198)

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

sodonnell pushed a commit to branch HDDS-3816-ec
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/HDDS-3816-ec by this push:
     new 9675863  HDDS-6413. EC: OzoneManagerRequestHandler needs to handle ECReplicationConfig (#3198)
9675863 is described below

commit 9675863705c5203f7a6ac5e4a45b59f0325594ad
Author: Stephen O'Donnell <st...@gmail.com>
AuthorDate: Tue Mar 15 21:59:28 2022 +0000

    HDDS-6413. EC: OzoneManagerRequestHandler needs to handle ECReplicationConfig (#3198)
---
 .../src/main/proto/OmClientProtocol.proto          |  4 +-
 .../protocolPB/OzoneManagerRequestHandler.java     | 53 ++++++++++++++--------
 2 files changed, 37 insertions(+), 20 deletions(-)

diff --git a/hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto b/hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto
index b2b6a47..fe8b0d1 100644
--- a/hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto
+++ b/hadoop-ozone/interface-client/src/main/proto/OmClientProtocol.proto
@@ -1276,7 +1276,7 @@ message MultipartUploadListPartsResponse {
     optional uint32 nextPartNumberMarker = 4;
     optional bool isTruncated = 5;
     repeated PartInfo partsList = 6;
-
+    optional hadoop.hdds.ECReplicationConfig ecReplicationConfig = 7;
 }
 
 message ListMultipartUploadsRequest {
@@ -1298,7 +1298,7 @@ message MultipartUploadInfo {
     required uint64 creationTime = 5;
     required hadoop.hdds.ReplicationType type = 6;
     required hadoop.hdds.ReplicationFactor factor = 7;
-
+    optional hadoop.hdds.ECReplicationConfig ecReplicationConfig = 8;
 }
 
 message PartInfo {
diff --git a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/protocolPB/OzoneManagerRequestHandler.java b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/protocolPB/OzoneManagerRequestHandler.java
index 5674d6a..55eb971 100644
--- a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/protocolPB/OzoneManagerRequestHandler.java
+++ b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/protocolPB/OzoneManagerRequestHandler.java
@@ -22,6 +22,8 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
 
+import org.apache.hadoop.hdds.client.ECReplicationConfig;
+import org.apache.hadoop.hdds.protocol.proto.HddsProtos;
 import org.apache.hadoop.hdds.protocol.proto.HddsProtos.UpgradeFinalizationStatus;
 import org.apache.hadoop.hdds.client.ReplicationConfig;
 import org.apache.hadoop.hdds.utils.db.SequenceNumberNotFoundException;
@@ -499,13 +501,18 @@ public class OzoneManagerRequestHandler implements RequestHandler {
 
     omPartInfoList.forEach(partInfo -> partInfoList.add(partInfo.getProto()));
 
-    response.setType(
-            omMultipartUploadListParts
-                    .getReplicationConfig()
-                    .getReplicationType());
-    response.setFactor(
-            ReplicationConfig.getLegacyFactor(
-                    omMultipartUploadListParts.getReplicationConfig()));
+    HddsProtos.ReplicationType repType = omMultipartUploadListParts
+        .getReplicationConfig()
+        .getReplicationType();
+    response.setType(repType);
+    if (repType == HddsProtos.ReplicationType.EC) {
+      response.setEcReplicationConfig(
+          ((ECReplicationConfig)omMultipartUploadListParts
+              .getReplicationConfig()).toProto());
+    } else {
+      response.setFactor(ReplicationConfig.getLegacyFactor(
+          omMultipartUploadListParts.getReplicationConfig()));
+    }
     response.setNextPartNumberMarker(
         omMultipartUploadListParts.getNextPartNumberMarker());
     response.setIsTruncated(omMultipartUploadListParts.isTruncated());
@@ -526,17 +533,27 @@ public class OzoneManagerRequestHandler implements RequestHandler {
     List<MultipartUploadInfo> info = omMultipartUploadList
         .getUploads()
         .stream()
-        .map(upload -> MultipartUploadInfo.newBuilder()
-            .setVolumeName(upload.getVolumeName())
-            .setBucketName(upload.getBucketName())
-            .setKeyName(upload.getKeyName())
-            .setUploadId(upload.getUploadId())
-            .setType(upload.getReplicationConfig().getReplicationType())
-            .setFactor(
-                    ReplicationConfig.getLegacyFactor(
-                            upload.getReplicationConfig()))
-            .setCreationTime(upload.getCreationTime().toEpochMilli())
-            .build())
+        .map(upload -> {
+          MultipartUploadInfo.Builder bldr = MultipartUploadInfo.newBuilder()
+              .setVolumeName(upload.getVolumeName())
+              .setBucketName(upload.getBucketName())
+              .setKeyName(upload.getKeyName())
+              .setUploadId(upload.getUploadId());
+
+          HddsProtos.ReplicationType repType = upload.getReplicationConfig()
+              .getReplicationType();
+          bldr.setType(repType);
+          if (repType == HddsProtos.ReplicationType.EC) {
+            bldr.setEcReplicationConfig(
+                ((ECReplicationConfig)upload.getReplicationConfig())
+                    .toProto());
+          } else {
+            bldr.setFactor(ReplicationConfig.getLegacyFactor(
+                upload.getReplicationConfig()));
+          }
+          bldr.setCreationTime(upload.getCreationTime().toEpochMilli());
+          return bldr.build();
+        })
         .collect(Collectors.toList());
 
     ListMultipartUploadsResponse response =

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