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

adoroszlai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/master by this push:
     new 3ff425ccf0 HDDS-9646. Unknown container from datanode in Recon. (#5560)
3ff425ccf0 is described below

commit 3ff425ccf02caa1514fd68bdf78bd06f8ff16ebc
Author: Sadanand Shenoy <[email protected]>
AuthorDate: Thu Nov 23 17:40:08 2023 +0530

    HDDS-9646. Unknown container from datanode in Recon. (#5560)
---
 .../org/apache/hadoop/hdds/scm/pipeline/PipelineManagerImpl.java | 2 +-
 .../apache/hadoop/hdds/scm/pipeline/PipelineStateManager.java    | 9 ++++++++-
 .../hadoop/hdds/scm/pipeline/PipelineStateManagerImpl.java       | 2 +-
 .../org/apache/hadoop/hdds/scm/pipeline/MockPipelineManager.java | 2 +-
 .../org/apache/hadoop/ozone/recon/scm/ReconPipelineManager.java  | 7 +++++++
 5 files changed, 18 insertions(+), 4 deletions(-)

diff --git 
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineManagerImpl.java
 
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineManagerImpl.java
index d5cb5504eb..56a6de3e05 100644
--- 
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineManagerImpl.java
+++ 
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineManagerImpl.java
@@ -394,7 +394,7 @@ public class PipelineManagerImpl implements PipelineManager 
{
   public void addContainerToPipelineSCMStart(
       PipelineID pipelineID, ContainerID containerID) throws IOException {
     // should not lock here, since no ratis operation happens.
-    stateManager.addContainerToPipelineSCMStart(pipelineID, containerID);
+    stateManager.addContainerToPipelineForce(pipelineID, containerID);
   }
 
   @Override
diff --git 
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineStateManager.java
 
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineStateManager.java
index ab0a448e6a..4dd0443a50 100644
--- 
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineStateManager.java
+++ 
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineStateManager.java
@@ -68,7 +68,14 @@ public interface PipelineStateManager {
       ContainerID containerID
   ) throws IOException;
 
-  void addContainerToPipelineSCMStart(
+  /**
+   * Adds container to SCM Pipeline without checking whether pipeline
+   * is closed.
+   * @param pipelineID
+   * @param containerID
+   * @throws IOException
+   */
+  void addContainerToPipelineForce(
       PipelineID pipelineID,
       ContainerID containerID
   ) throws IOException;
diff --git 
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineStateManagerImpl.java
 
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineStateManagerImpl.java
index 8b8dd79d67..2177d3e919 100644
--- 
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineStateManagerImpl.java
+++ 
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelineStateManagerImpl.java
@@ -119,7 +119,7 @@ public class PipelineStateManagerImpl implements 
PipelineStateManager {
   }
 
   @Override
-  public void addContainerToPipelineSCMStart(
+  public void addContainerToPipelineForce(
           PipelineID pipelineId, ContainerID containerID)
           throws IOException {
     lock.writeLock().lock();
diff --git 
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/pipeline/MockPipelineManager.java
 
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/pipeline/MockPipelineManager.java
index f00aa7f6c1..45ab65cd3f 100644
--- 
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/pipeline/MockPipelineManager.java
+++ 
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/pipeline/MockPipelineManager.java
@@ -207,7 +207,7 @@ public class MockPipelineManager implements PipelineManager 
{
   @Override
   public void addContainerToPipelineSCMStart(
           PipelineID pipelineID, ContainerID containerID) throws IOException {
-    stateManager.addContainerToPipelineSCMStart(pipelineID, containerID);
+    stateManager.addContainerToPipelineForce(pipelineID, containerID);
   }
 
   @Override
diff --git 
a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/scm/ReconPipelineManager.java
 
b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/scm/ReconPipelineManager.java
index 77dd5486ec..0cde1c687a 100644
--- 
a/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/scm/ReconPipelineManager.java
+++ 
b/hadoop-ozone/recon/src/main/java/org/apache/hadoop/ozone/recon/scm/ReconPipelineManager.java
@@ -26,6 +26,7 @@ import java.util.stream.Collectors;
 
 import org.apache.hadoop.hdds.conf.ConfigurationSource;
 import org.apache.hadoop.hdds.protocol.proto.HddsProtos;
+import org.apache.hadoop.hdds.scm.container.ContainerID;
 import org.apache.hadoop.hdds.scm.ha.SCMContext;
 import org.apache.hadoop.hdds.scm.ha.SCMHAManager;
 import org.apache.hadoop.hdds.scm.node.NodeManager;
@@ -174,4 +175,10 @@ public final class ReconPipelineManager extends 
PipelineManagerImpl {
       releaseWriteLock();
     }
   }
+
+  @Override
+  public void addContainerToPipeline(PipelineID pipelineID,
+      ContainerID containerID) throws IOException {
+    getStateManager().addContainerToPipelineForce(pipelineID, containerID);
+  }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to