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 f9e5178cdd HDDS-10143. Intermittent failure in
TestOzoneRpcClientWithRatis.testParallelDeleteBucketAndCreateKey (#6335)
f9e5178cdd is described below
commit f9e5178cddf01d4bd8804ee1247b0f9a23de65c9
Author: XiChen <[email protected]>
AuthorDate: Sun Mar 24 16:56:48 2024 +0800
HDDS-10143. Intermittent failure in
TestOzoneRpcClientWithRatis.testParallelDeleteBucketAndCreateKey (#6335)
---
.../hadoop/ozone/client/rpc/TestOzoneRpcClientWithRatis.java | 7 ++++++-
.../protocolPB/OzoneManagerProtocolServerSideTranslatorPB.java | 9 +++++++++
2 files changed, 15 insertions(+), 1 deletion(-)
diff --git
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/TestOzoneRpcClientWithRatis.java
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/TestOzoneRpcClientWithRatis.java
index febb6fd41c..4ecbd08a41 100644
---
a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/TestOzoneRpcClientWithRatis.java
+++
b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/TestOzoneRpcClientWithRatis.java
@@ -56,6 +56,7 @@ import org.apache.hadoop.ozone.om.OMConfigKeys;
import org.apache.hadoop.ozone.om.helpers.OmKeyArgs;
import org.apache.hadoop.ozone.om.helpers.OmMultipartInfo;
import org.apache.hadoop.ozone.om.ratis.OzoneManagerStateMachine;
+import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.Type;
import org.apache.ozone.test.GenericTestUtils;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
@@ -323,7 +324,11 @@ public class TestOzoneRpcClientWithRatis extends
TestOzoneRpcClientAbstract {
omSM.getHandler().setInjector(injector);
thread1.start();
thread2.start();
- Thread.sleep(2000);
+ // Wait long enough for createKey's preExecute to finish executing
+ GenericTestUtils.waitFor(() -> {
+ return
getCluster().getOzoneManager().getOmServerProtocol().getLastRequestToSubmit().getCmdType().equals(
+ Type.CreateKey);
+ }, 100, 10000);
injector.resume();
try {
diff --git
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/protocolPB/OzoneManagerProtocolServerSideTranslatorPB.java
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/protocolPB/OzoneManagerProtocolServerSideTranslatorPB.java
index 11d27913ff..03729aebb5 100644
---
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/protocolPB/OzoneManagerProtocolServerSideTranslatorPB.java
+++
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/protocolPB/OzoneManagerProtocolServerSideTranslatorPB.java
@@ -87,6 +87,9 @@ public class OzoneManagerProtocolServerSideTranslatorPB
implements OzoneManagerP
// always true, only used in tests
private boolean shouldFlushCache = true;
+ private OMRequest lastRequestToSubmit;
+
+
/**
* Constructs an instance of the server handler.
*
@@ -212,6 +215,7 @@ public class OzoneManagerProtocolServerSideTranslatorPB
implements OzoneManagerP
assert (omClientRequest != null);
OMClientRequest finalOmClientRequest = omClientRequest;
requestToSubmit = preExecute(finalOmClientRequest);
+ this.lastRequestToSubmit = requestToSubmit;
} catch (IOException ex) {
if (omClientRequest != null) {
omClientRequest.handleRequestFailure(ozoneManager);
@@ -235,6 +239,11 @@ public class OzoneManagerProtocolServerSideTranslatorPB
implements OzoneManagerP
() -> finalOmClientRequest.preExecute(ozoneManager));
}
+ @VisibleForTesting
+ public OMRequest getLastRequestToSubmit() {
+ return lastRequestToSubmit;
+ }
+
/**
* Submits request to OM's Ratis server.
*/
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]