Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,6 @@ NavigableSet<ContainerID> getContainersInPipeline(PipelineID pipelineID)

void openPipeline(PipelineID pipelineId) throws IOException;

@Deprecated
void closePipeline(Pipeline pipeline, boolean onTimeout)
throws IOException;

void closePipeline(PipelineID pipelineID) throws IOException;

void deletePipeline(PipelineID pipelineID) throws IOException;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -488,20 +488,6 @@ private void closeContainersForPipeline(final PipelineID pipelineId)
}
}

/**
* put pipeline in CLOSED state.
* @param pipeline - ID of the pipeline.
* @param onTimeout - whether to remove pipeline after some time.
* @throws IOException throws exception in case of failure
* @deprecated Do not use this method, onTimeout is not honored.
*/
@Override
@Deprecated
public void closePipeline(Pipeline pipeline, boolean onTimeout)
throws IOException {
closePipeline(pipeline.getId());
}

/**
* Move the Pipeline to CLOSED state.
* @param pipelineID ID of the Pipeline to be closed
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ public ContainerInfo getContainer(final long size,
if (containerInfo == null
|| !containerHasSpace(containerInfo, size)) {
existingPipelines.remove(pipelineIndex);
pipelineManager.closePipeline(pipeline, true);
pipelineManager.closePipeline(pipeline.getId());
openPipelineCount--;
} else {
if (pipelineIsExcluded(pipeline, containerInfo, excludeList)) {
Expand All @@ -151,7 +151,7 @@ public ContainerInfo getContainer(final long size,
LOG.warn("Pipeline or container not found when selecting a writable "
+ "container", e);
existingPipelines.remove(pipelineIndex);
pipelineManager.closePipeline(pipeline, true);
pipelineManager.closePipeline(pipeline.getId());
openPipelineCount--;
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -882,7 +882,7 @@ public void closePipeline(HddsProtos.PipelineID pipelineID)
PipelineManager pipelineManager = scm.getPipelineManager();
Pipeline pipeline =
pipelineManager.getPipeline(PipelineID.getFromProtobuf(pipelineID));
pipelineManager.closePipeline(pipeline, true);
pipelineManager.closePipeline(pipeline.getId());
AUDIT.logWriteSuccess(buildAuditMessageForSuccess(
SCMAction.CLOSE_PIPELINE, auditMap));
} catch (Exception ex) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ private void closePipelinesBeforeFinalization(PipelineManager pipelineManager)

for (Pipeline pipeline : pipelineManager.getPipelines()) {
if (pipeline.getPipelineState() != CLOSED) {
pipelineManager.closePipeline(pipeline, true);
pipelineManager.closePipeline(pipeline.getId());
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -575,7 +575,7 @@ public void testMultipleBlockAllocationWithClosedContainer()
public void testBlockAllocationWithNoAvailablePipelines()
throws IOException {
for (Pipeline pipeline : pipelineManager.getPipelines()) {
pipelineManager.closePipeline(pipeline, false);
pipelineManager.closePipeline(pipeline.getId());
}
assertEquals(0, pipelineManager.getPipelines(replicationConfig).size());
assertNotNull(blockManager
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -236,17 +236,12 @@ public void openPipeline(final PipelineID pipelineId)
}

@Override
public void closePipeline(final Pipeline pipeline, final boolean onTimeout)
public void closePipeline(final PipelineID pipelineId)
throws IOException {
stateManager.updatePipelineState(pipeline.getId().getProtobuf(),
stateManager.updatePipelineState(pipelineId.getProtobuf(),
HddsProtos.PipelineState.PIPELINE_CLOSED);
}

@Override
public void closePipeline(PipelineID pipelineID) throws IOException {

}

@Override
public void deletePipeline(PipelineID pipelineID) throws IOException {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -350,7 +350,7 @@ public void testClosePipelineShouldFailOnFollower() throws Exception {
Pipeline pipeline = assertAllocate(pipelineManager);
changeToFollower(pipelineManager);
assertFailsNotLeader(
() -> pipelineManager.closePipeline(pipeline, false));
() -> pipelineManager.closePipeline(pipeline.getId()));
}
}

Expand Down Expand Up @@ -521,7 +521,7 @@ public void testScrubPipelines() throws Exception {
.createPipeline(RatisReplicationConfig
.getInstance(ReplicationFactor.THREE));
pipelineManager.openPipeline(closedPipeline.getId());
pipelineManager.closePipeline(closedPipeline, true);
pipelineManager.closePipeline(closedPipeline.getId());

// pipeline should be seen in pipelineManager as CLOSED.
assertTrue(pipelineManager
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@ public void testWatchForCommitForRetryfailure(RaftProtos.ReplicationLevel watchT
cluster.shutdownHddsDatanode(pipeline.getNodes().get(1));
// emulate closing pipeline when SCM detects DEAD datanodes
cluster.getStorageContainerManager()
.getPipelineManager().closePipeline(pipeline, false);
.getPipelineManager().closePipeline(pipeline.getId());
// again write data with more than max buffer limit. This wi
// just watch for a log index which in not updated in the commitInfo Map
// as well as there is no logIndex generate in Ratis.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ public void testAddContainerToClosedPipeline() throws Exception {
Pipeline pipeline = pipelines.get(0);

// if testing for not-found pipeline, remove pipeline when closing.
pipelineManager.closePipeline(pipeline, true);
pipelineManager.closePipeline(pipeline.getId());

// adding container to a closed pipeline should yield an error.
ContainerInfoProto containerInfo = createContainer(pipeline);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ public void testMinLeaderCountChoosePolicy() throws Exception {

int destroyNum = RandomUtils.secure().randomInt(0, pipelines.size());
for (int k = 0; k <= destroyNum; k++) {
pipelineManager.closePipeline(pipelines.get(k), false);
pipelineManager.closePipeline(pipelines.get(k).getId());
}

waitForPipelines(pipelineNum);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ public void testPipelineCloseWithOpenContainer()
assertEquals(1, setOpen.size());

pipelineManager
.closePipeline(ratisContainer.getPipeline(), false);
.closePipeline(ratisContainer.getPipeline().getId());
GenericTestUtils.waitFor(() -> {
try {
return containerManager
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ public void testAutomaticPipelineCreationOnPipelineDestroy()
.getPipelines(RatisReplicationConfig.getInstance(
ReplicationFactor.THREE), Pipeline.PipelineState.OPEN);
for (Pipeline pipeline : pipelines) {
pipelineManager.closePipeline(pipeline, false);
pipelineManager.closePipeline(pipeline.getId());
}
// make sure two pipelines are created
waitForPipelines(2);
Expand All @@ -112,7 +112,7 @@ public void testAutomaticPipelineCreationDisablingFactorONE()
.getPipelines(RatisReplicationConfig.getInstance(
ReplicationFactor.THREE), Pipeline.PipelineState.OPEN);
for (Pipeline pipeline : pipelines) {
pipelineManager.closePipeline(pipeline, false);
pipelineManager.closePipeline(pipeline.getId());
}

// make sure two pipelines are created
Expand Down Expand Up @@ -155,7 +155,7 @@ public void testPipelineCreationOnNodeRestart() throws Exception {

// destroy the existing pipelines
for (Pipeline pipeline : pipelines) {
pipelineManager.closePipeline(pipeline, false);
pipelineManager.closePipeline(pipeline.getId());
}

if (cluster.getStorageContainerManager()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,7 @@ private void closeAllPipelines(ReplicationConfig replicationConfig) {
Pipeline.PipelineState.OPEN)
.forEach(p -> {
try {
scm.getPipelineManager().closePipeline(p, false);
scm.getPipelineManager().closePipeline(p.getId());
} catch (IOException e) {
throw new RuntimeException(e);
}
Expand Down Expand Up @@ -271,7 +271,7 @@ public void testOrphanBlock() throws Exception {
ANY_USER, ContainerID.valueOf(orphanContainerID));

// Close the container by closing the pipeline
scm.getPipelineManager().closePipeline(orphanPipeline, false);
scm.getPipelineManager().closePipeline(orphanPipeline.getId());

// Find the datanode hosting Replica index = 2
HddsDatanodeService dn2Service = null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ public static void closeContainer(StorageContainerManager scm,
throws IOException, TimeoutException, InterruptedException {
Pipeline pipeline = scm.getPipelineManager()
.getPipeline(container.getPipelineID());
scm.getPipelineManager().closePipeline(pipeline, true);
scm.getPipelineManager().closePipeline(pipeline.getId());
GenericTestUtils.waitFor(() ->
container.getState() == HddsProtos.LifeCycleState.CLOSED,
200, 30000);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -441,7 +441,7 @@ public void testECContainerKeysCountAndNumContainerReplicas()
PipelineManager pm =
cluster.getStorageContainerManager().getPipelineManager();
for (Pipeline p : pm.getPipelines(repConfig)) {
pm.closePipeline(p, true);
pm.closePipeline(p.getId());
}

String keyName = UUID.randomUUID().toString();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ public static void waitForPipelineClose(List<Pipeline> pipelineList,
for (Pipeline pipeline1 : pipelineList) {
// issue pipeline destroy command
cluster.getStorageContainerManager()
.getPipelineManager().closePipeline(pipeline1, false);
.getPipelineManager().closePipeline(pipeline1.getId());
}

// wait for the pipeline to get destroyed in the datanodes
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ public void testCloseContainerViaStandAlone()
assertTrue(isContainerClosed(cluster, containerID, datanodeDetails));

cluster.getStorageContainerManager().getPipelineManager()
.closePipeline(pipeline, false);
.closePipeline(pipeline.getId());
Thread.sleep(5000);
// Pipeline close should not affect a container in CLOSED state
assertTrue(isContainerClosed(cluster, containerID, datanodeDetails));
Expand Down Expand Up @@ -317,7 +317,7 @@ public void testQuasiCloseTransitionViaRatis()

// close the pipeline
cluster.getStorageContainerManager()
.getPipelineManager().closePipeline(pipeline, false);
.getPipelineManager().closePipeline(pipeline.getId());

// All the containers in OPEN or CLOSING state should transition to
// QUASI-CLOSED after pipeline close
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,6 @@ private void destroyPipeline() throws Exception {
PipelineManager pipelineManager =
cluster.getStorageContainerManager().getPipelineManager();
Pipeline pipeline = pipelineManager.getPipeline(id);
pipelineManager.closePipeline(pipeline, false);
pipelineManager.closePipeline(pipeline.getId());
}
}