This is an automated email from the ASF dual-hosted git repository.
bharat pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hadoop-ozone.git
The following commit(s) were added to refs/heads/master by this push:
new 69a7588 HDDS-3742. Improve OM performance with 5.29% by avoid
stream.collect (#1030)
69a7588 is described below
commit 69a7588aa2c25e18029c5e48bd4895770c9c6f9c
Author: runzhiwang <[email protected]>
AuthorDate: Sat Jun 6 12:30:42 2020 +0800
HDDS-3742. Improve OM performance with 5.29% by avoid stream.collect (#1030)
---
.../apache/hadoop/ozone/om/helpers/ServiceInfo.java | 19 ++++++++++---------
.../ozone/protocolPB/OzoneManagerRequestHandler.java | 13 ++++++++++---
2 files changed, 20 insertions(+), 12 deletions(-)
diff --git
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/ServiceInfo.java
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/ServiceInfo.java
index 77bd803..71d977c 100644
---
a/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/ServiceInfo.java
+++
b/hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/ServiceInfo.java
@@ -23,7 +23,6 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.stream.Collectors;
import org.apache.hadoop.hdds.protocol.proto.HddsProtos.NodeType;
import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos;
@@ -143,16 +142,18 @@ public final class ServiceInfo {
public OzoneManagerProtocolProtos.ServiceInfo getProtobuf() {
OzoneManagerProtocolProtos.ServiceInfo.Builder builder =
OzoneManagerProtocolProtos.ServiceInfo.newBuilder();
+
+ List<ServicePort> servicePorts = new ArrayList<>();
+ for (Map.Entry<ServicePort.Type, Integer>
+ entry : ports.entrySet()) {
+ servicePorts.add(ServicePort.newBuilder()
+ .setType(entry.getKey())
+ .setValue(entry.getValue()).build());
+ }
+
builder.setNodeType(nodeType)
.setHostname(hostname)
- .addAllServicePorts(
- ports.entrySet().stream()
- .map(
- entry ->
- ServicePort.newBuilder()
- .setType(entry.getKey())
- .setValue(entry.getValue()).build())
- .collect(Collectors.toList()));
+ .addAllServicePorts(servicePorts);
if (nodeType == NodeType.OM && omRoleInfo != null) {
builder.setOmRole(omRoleInfo);
}
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 e7b0265..3183aa1 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
@@ -45,6 +45,7 @@ import
org.apache.hadoop.ozone.om.ratis.utils.OzoneManagerRatisUtils;
import org.apache.hadoop.ozone.om.request.OMClientRequest;
import org.apache.hadoop.ozone.om.request.util.OmResponseUtil;
import org.apache.hadoop.ozone.om.response.OMClientResponse;
+import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos;
import
org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.AllocateBlockRequest;
import
org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.AllocateBlockResponse;
import
org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.CheckVolumeAccessRequest;
@@ -448,9 +449,15 @@ public class OzoneManagerRequestHandler implements
RequestHandler {
ServiceListResponse.Builder resp = ServiceListResponse.newBuilder();
ServiceInfoEx serviceInfoEx = impl.getServiceInfo();
- resp.addAllServiceInfo(serviceInfoEx.getServiceInfoList().stream()
- .map(ServiceInfo::getProtobuf)
- .collect(Collectors.toList()));
+
+ List<OzoneManagerProtocolProtos.ServiceInfo> serviceInfoProtos =
+ new ArrayList<>();
+ List<ServiceInfo> serviceInfos = serviceInfoEx.getServiceInfoList();
+ for (ServiceInfo info : serviceInfos) {
+ serviceInfoProtos.add(info.getProtobuf());
+ }
+
+ resp.addAllServiceInfo(serviceInfoProtos);
if (serviceInfoEx.getCaCertificate() != null) {
resp.setCaCertificate(serviceInfoEx.getCaCertificate());
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]