captainzmc commented on code in PR #667:
URL: https://github.com/apache/ratis/pull/667#discussion_r981395646
##########
ratis-server/src/main/java/org/apache/ratis/server/impl/ServerState.java:
##########
@@ -137,29 +139,32 @@ class ServerState implements Closeable {
snapshotManager = new SnapshotManager(storage, id);
- stateMachine.initialize(server.getRaftServer(), group.getGroupId(),
storage);
Review Comment:
Hi @szetszwo, I am currently testing ratis 2.4.0 in Ozone with
@codings-dan. We found a possible compatibility issue.
Here we move statemachine.Initialize() from the constructor to Initialize
(), which is executed only in the
[start()](https://github.com/apache/ratis/pull/667/files#diff-ad3a60b7e17aef8c1e813168c5ebc591dc7259b2427d8870a95a77c010e5692dR308)
of RaftServerImpl.
This changes the execution logic of RaftServer. Such as Ozone
testInstallCorruptedCheckpointFailure, original MiniOzoneCluster need to create
three SCM and start the 2 sets of them. In the logic of the original three
SCMStateMachine is running, Now there are only the first two. This causes the
third SCMStateMachine status [check to be
incorrect](https://github.com/captainzmc/hadoop-ozone/actions/runs/3098099863/jobs/5015584764#step:6:3147).
Unless we find a way to execute ServerStateās
[initialize(stateMachine)](https://github.com/apache/ratis/pull/667/files#diff-62ccf21408c07a3fcfe1c3e3f7d5cdff22a8efbcdea9eacae3fe14351c404af3R156)
in Ozone UT.
In addition to the SCM UT, we also found this problem in the [OM
UT](https://github.com/captainzmc/hadoop-ozone/actions/runs/3098099863/jobs/5015584440#step:5:3105).
Of course, this is only a problem of UT, we did not find this problem in the
actual use of Ozone.
At present, I haven't thought of a good way to fix these UT. Do you have any
suggestions?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]