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 2aee970439 HDDS-9962. Intermittent timeout in
TestBlockDeletion.testBlockDeletion (#5886)
2aee970439 is described below
commit 2aee9704396313d2269e6176a071dbb2525b7b4b
Author: XiChen <[email protected]>
AuthorDate: Fri Dec 29 23:36:03 2023 +0800
HDDS-9962. Intermittent timeout in TestBlockDeletion.testBlockDeletion
(#5886)
---
.../hadoop/hdds/scm/block/SCMBlockDeletingService.java | 10 ++++++----
.../statemachine/commandhandler/TestBlockDeletion.java | 13 ++++++++-----
2 files changed, 14 insertions(+), 9 deletions(-)
diff --git
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/block/SCMBlockDeletingService.java
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/block/SCMBlockDeletingService.java
index 24e950a599..8677baf33b 100644
---
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/block/SCMBlockDeletingService.java
+++
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/block/SCMBlockDeletingService.java
@@ -237,10 +237,12 @@ public class SCMBlockDeletingService extends
BackgroundService
public void notifyStatusChanged() {
serviceLock.lock();
try {
- if (scmContext.isLeaderReady() && !scmContext.isInSafeMode() &&
- serviceStatus != ServiceStatus.RUNNING) {
- safemodeExitMillis = clock.millis();
- serviceStatus = ServiceStatus.RUNNING;
+ if (scmContext.isLeaderReady() && !scmContext.isInSafeMode()) {
+ if (serviceStatus != ServiceStatus.RUNNING) {
+ LOG.info("notifyStatusChanged" + ":" + ServiceStatus.RUNNING);
+ safemodeExitMillis = clock.millis();
+ serviceStatus = ServiceStatus.RUNNING;
+ }
} else {
serviceStatus = ServiceStatus.PAUSING;
}
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/container/common/statemachine/commandhandler/TestBlockDeletion.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/container/common/statemachine/commandhandler/TestBlockDeletion.java
index 744f8286e6..5dec1799b4 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/container/common/statemachine/commandhandler/TestBlockDeletion.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/container/common/statemachine/commandhandler/TestBlockDeletion.java
@@ -168,6 +168,7 @@ public class TestBlockDeletion {
0,
TimeUnit.MILLISECONDS);
conf.setInt("hdds.datanode.block.delete.threads.max", 5);
+ conf.setInt("hdds.datanode.block.delete.queue.limit", 32);
ReplicationManager.ReplicationManagerConfiguration replicationConf = conf
.getObject(ReplicationManager.ReplicationManagerConfiguration.class);
replicationConf.setInterval(Duration.ofSeconds(300));
@@ -293,11 +294,6 @@ public class TestBlockDeletion {
Assertions.assertFalse(containerIdsWithDeletedBlocks.isEmpty());
// Containers in the DN and SCM should have same delete transactionIds
matchContainerTransactionIds();
- // Containers in the DN and SCM should have same delete transactionIds
- // after DN restart. The assertion is just to verify that the state of
- // containerInfos in dn and scm is consistent after dn restart.
- cluster.restartHddsDatanode(0, true);
- matchContainerTransactionIds();
// Verify transactions committed
GenericTestUtils.waitFor(() -> {
@@ -309,6 +305,13 @@ public class TestBlockDeletion {
return false;
}
}, 500, 10000);
+
+ // Containers in the DN and SCM should have same delete transactionIds
+ // after DN restart. The assertion is just to verify that the state of
+ // containerInfos in dn and scm is consistent after dn restart.
+ cluster.restartHddsDatanode(0, true);
+ matchContainerTransactionIds();
+
Assertions.assertEquals(metrics.getNumBlockDeletionTransactionCreated(),
metrics.getNumBlockDeletionTransactionCompleted());
Assertions.assertTrue(metrics.getNumBlockDeletionCommandSent() >=
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]