HDDS-433. ContainerStateMachine#readStateMachineData should properly build LogEntryProto. Contributed by Lokesh Jain.
(cherry picked from commit 47299ce23fa0f327b8c532ca96191a571c92d244) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/7f538248 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/7f538248 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/7f538248 Branch: refs/heads/ozone-0.2 Commit: 7f5382483ebe0dc7d8601a36a75760163ca2fcb2 Parents: 22c318e Author: Mukul Kumar Singh <[email protected]> Authored: Wed Sep 12 18:30:53 2018 +0530 Committer: Márton Elek <[email protected]> Committed: Thu Sep 13 23:07:41 2018 +0200 ---------------------------------------------------------------------- .../transport/server/ratis/ContainerStateMachine.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/7f538248/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/ContainerStateMachine.java ---------------------------------------------------------------------- diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/ContainerStateMachine.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/ContainerStateMachine.java index 1636f24..b84db66 100644 --- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/ContainerStateMachine.java +++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/ContainerStateMachine.java @@ -268,7 +268,7 @@ public class ContainerStateMachine extends BaseStateMachine { } } - private LogEntryProto readStateMachineData(SMLogEntryProto smLogEntryProto, + private LogEntryProto readStateMachineData(LogEntryProto entry, ContainerCommandRequestProto requestProto) { WriteChunkRequestProto writeChunkRequestProto = requestProto.getWriteChunk(); @@ -307,18 +307,18 @@ public class ContainerStateMachine extends BaseStateMachine { ContainerCommandRequestProto.newBuilder(requestProto) .setWriteChunk(dataWriteChunkProto); - return recreateLogEntryProto(smLogEntryProto, + return recreateLogEntryProto(entry, newStateMachineProto.build().toByteString()); } - private LogEntryProto recreateLogEntryProto(SMLogEntryProto smLogEntryProto, + private LogEntryProto recreateLogEntryProto(LogEntryProto entry, ByteString stateMachineData) { // recreate the log entry final SMLogEntryProto log = - SMLogEntryProto.newBuilder(smLogEntryProto) + SMLogEntryProto.newBuilder(entry.getSmLogEntry()) .setStateMachineData(stateMachineData) .build(); - return LogEntryProto.newBuilder().setSmLogEntry(log).build(); + return LogEntryProto.newBuilder(entry).setSmLogEntry(log).build(); } /** @@ -360,11 +360,11 @@ public class ContainerStateMachine extends BaseStateMachine { if (requestProto.getCmdType() == Type.WriteChunk) { return CompletableFuture.supplyAsync(() -> - readStateMachineData(smLogEntryProto, requestProto), + readStateMachineData(entry, requestProto), chunkExecutor); } else if (requestProto.getCmdType() == Type.CreateContainer) { LogEntryProto log = - recreateLogEntryProto(smLogEntryProto, requestProto.toByteString()); + recreateLogEntryProto(entry, requestProto.toByteString()); return CompletableFuture.completedFuture(log); } else { throw new IllegalStateException("Cmd type:" + requestProto.getCmdType() --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
