Repository: hadoop Updated Branches: refs/heads/branch-3.0 b8a2fd37d -> 61aba4f0c
YARN-7320. Duplicate LiteralByteStrings in SystemCredentialsForAppsProto.credentialsForApp_ ([email protected] via rkanter) (cherry picked from commit 5da295a34e39b507e8291073782e0576cd06896a) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/61aba4f0 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/61aba4f0 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/61aba4f0 Branch: refs/heads/branch-3.0 Commit: 61aba4f0c1b20cb783c5fc0aa2344a38fdf3d8b2 Parents: b8a2fd3 Author: Robert Kanter <[email protected]> Authored: Mon Oct 23 17:56:56 2017 -0700 Committer: Robert Kanter <[email protected]> Committed: Mon Oct 23 18:02:11 2017 -0700 ---------------------------------------------------------------------- .../impl/pb/NodeHeartbeatResponsePBImpl.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/61aba4f0/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/protocolrecords/impl/pb/NodeHeartbeatResponsePBImpl.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/protocolrecords/impl/pb/NodeHeartbeatResponsePBImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/protocolrecords/impl/pb/NodeHeartbeatResponsePBImpl.java index bbd1294..ccc4191 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/protocolrecords/impl/pb/NodeHeartbeatResponsePBImpl.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/api/protocolrecords/impl/pb/NodeHeartbeatResponsePBImpl.java @@ -26,6 +26,10 @@ import java.util.Iterator; import java.util.List; import java.util.Map; +import com.google.common.collect.Interner; +import com.google.common.collect.Interners; +import com.google.protobuf.ByteString; + import org.apache.hadoop.security.proto.SecurityProtos.TokenProto; import org.apache.hadoop.yarn.api.protocolrecords.SignalContainerRequest; import org.apache.hadoop.yarn.api.protocolrecords.impl.pb.SignalContainerRequestPBImpl; @@ -84,6 +88,9 @@ public class NodeHeartbeatResponsePBImpl extends NodeHeartbeatResponse { private List<Container> containersToDecrease = null; private List<SignalContainerRequest> containersToSignal = null; + private static final Interner<ByteString> BYTE_STRING_INTERNER = + Interners.newWeakInterner(); + public NodeHeartbeatResponsePBImpl() { builder = NodeHeartbeatResponseProto.newBuilder(); } @@ -148,8 +155,8 @@ public class NodeHeartbeatResponsePBImpl extends NodeHeartbeatResponse { for (Map.Entry<ApplicationId, ByteBuffer> entry : systemCredentials.entrySet()) { builder.addSystemCredentialsForApps(SystemCredentialsForAppsProto.newBuilder() .setAppId(convertToProtoFormat(entry.getKey())) - .setCredentialsForApp(ProtoUtils.convertToProtoFormat( - entry.getValue().duplicate()))); + .setCredentialsForApp(BYTE_STRING_INTERNER.intern( + ProtoUtils.convertToProtoFormat(entry.getValue())))); } } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
