You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by el...@apache.org on 2018/09/13 21:17:06 UTC

[1/2] hadoop git commit: HDDS-420. putKey failing with KEY_ALLOCATION_ERROR. Contributed by Shashikant Banerjee.

Repository: hadoop
Updated Branches:
  refs/heads/ozone-0.2 22c318eee -> d671e6650


HDDS-420. putKey failing with KEY_ALLOCATION_ERROR. Contributed by Shashikant Banerjee.

(cherry picked from commit c6e19db197253b660c8b16854360fe95b1d7c43f)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d671e665
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d671e665
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d671e665

Branch: refs/heads/ozone-0.2
Commit: d671e665009033031717beb7c31e746189a9020b
Parents: 7f53824
Author: Mukul Kumar Singh <ms...@apache.org>
Authored: Thu Sep 13 11:29:31 2018 +0530
Committer: Márton Elek <el...@apache.org>
Committed: Thu Sep 13 23:07:41 2018 +0200

----------------------------------------------------------------------
 .../ozone/container/common/statemachine/StateContext.java    | 2 +-
 .../common/transport/server/ratis/XceiverServerRatis.java    | 3 +++
 .../org/apache/hadoop/hdds/scm/node/StaleNodeHandler.java    | 4 ++++
 .../hdds/scm/pipelines/PipelineActionEventHandler.java       | 2 ++
 .../hadoop/hdds/scm/pipelines/ratis/RatisManagerImpl.java    | 8 ++++----
 5 files changed, 14 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/d671e665/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/StateContext.java
----------------------------------------------------------------------
diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/StateContext.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/StateContext.java
index c2d5421..9d5a778 100644
--- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/StateContext.java
+++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/StateContext.java
@@ -280,7 +280,7 @@ public class StateContext {
             && pipelineActionIter.hasClosePipeline() && pipelineAction
             .hasClosePipeline()
             && pipelineActionIter.getClosePipeline().getPipelineID()
-            == pipelineAction.getClosePipeline().getPipelineID()) {
+            .equals(pipelineAction.getClosePipeline().getPipelineID())) {
           return;
         }
       }

http://git-wip-us.apache.org/repos/asf/hadoop/blob/d671e665/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java
----------------------------------------------------------------------
diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java
index f775396..38d826b 100644
--- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java
+++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/transport/server/ratis/XceiverServerRatis.java
@@ -397,6 +397,9 @@ public final class XceiverServerRatis implements XceiverServerSpi {
         .setAction(PipelineAction.Action.CLOSE)
         .build();
     context.addPipelineActionIfAbsent(action);
+    LOG.debug(
+        "pipeline Action " + action.getAction() + "  on pipeline " + pipelineID
+            + ".Reason : " + action.getClosePipeline().getDetailedReason());
   }
 
   void handleNodeSlowness(

http://git-wip-us.apache.org/repos/asf/hadoop/blob/d671e665/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/StaleNodeHandler.java
----------------------------------------------------------------------
diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/StaleNodeHandler.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/StaleNodeHandler.java
index 0bd9339..b435e77 100644
--- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/StaleNodeHandler.java
+++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/StaleNodeHandler.java
@@ -25,6 +25,8 @@ import org.apache.hadoop.hdds.scm.events.SCMEvents;
 import org.apache.hadoop.hdds.scm.node.states.Node2ContainerMap;
 import org.apache.hadoop.hdds.server.events.EventHandler;
 import org.apache.hadoop.hdds.server.events.EventPublisher;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.util.Set;
 
@@ -32,6 +34,7 @@ import java.util.Set;
  * Handles Stale node event.
  */
 public class StaleNodeHandler implements EventHandler<DatanodeDetails> {
+  static final Logger LOG = LoggerFactory.getLogger(StaleNodeHandler.class);
 
   private final Node2ContainerMap node2ContainerMap;
   private final Mapping containerManager;
@@ -48,6 +51,7 @@ public class StaleNodeHandler implements EventHandler<DatanodeDetails> {
     Set<PipelineID> pipelineIDs =
         containerManager.getPipelineOnDatanode(datanodeDetails);
     for (PipelineID id : pipelineIDs) {
+      LOG.info("closing pipeline {}.", id);
       publisher.fireEvent(SCMEvents.PIPELINE_CLOSE, id);
     }
   }

http://git-wip-us.apache.org/repos/asf/hadoop/blob/d671e665/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/PipelineActionEventHandler.java
----------------------------------------------------------------------
diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/PipelineActionEventHandler.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/PipelineActionEventHandler.java
index 54c2400..1053149 100644
--- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/PipelineActionEventHandler.java
+++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/PipelineActionEventHandler.java
@@ -50,6 +50,8 @@ public class PipelineActionEventHandler implements
       case CLOSE:
         PipelineID pipelineID = PipelineID.
             getFromProtobuf(action.getClosePipeline().getPipelineID());
+        LOG.info("Closing pipeline " + pipelineID + " for reason:" + action
+            .getClosePipeline().getDetailedReason());
         publisher.fireEvent(SCMEvents.PIPELINE_CLOSE, pipelineID);
         break;
       default:

http://git-wip-us.apache.org/repos/asf/hadoop/blob/d671e665/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/ratis/RatisManagerImpl.java
----------------------------------------------------------------------
diff --git a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/ratis/RatisManagerImpl.java b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/ratis/RatisManagerImpl.java
index 150802e..0342e18 100644
--- a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/ratis/RatisManagerImpl.java
+++ b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipelines/ratis/RatisManagerImpl.java
@@ -110,15 +110,15 @@ public class RatisManagerImpl extends PipelineManager {
    * Close the pipeline.
    */
   public void closePipeline(Pipeline pipeline) throws IOException {
+    try (XceiverClientRatis client =
+        XceiverClientRatis.newXceiverClientRatis(pipeline, conf)) {
+      client.destroyPipeline();
+    }
     super.closePipeline(pipeline);
     for (DatanodeDetails node : pipeline.getMachines()) {
       // A node should always be the in ratis members list.
       Preconditions.checkArgument(ratisMembers.remove(node));
     }
-    try (XceiverClientRatis client =
-        XceiverClientRatis.newXceiverClientRatis(pipeline, conf)) {
-      client.destroyPipeline();
-    }
   }
 
   /**


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


[2/2] hadoop git commit: HDDS-433. ContainerStateMachine#readStateMachineData should properly build LogEntryProto. Contributed by Lokesh Jain.

Posted by el...@apache.org.
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 <ms...@apache.org>
Authored: Wed Sep 12 18:30:53 2018 +0530
Committer: Márton Elek <el...@apache.org>
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: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org