slfan1989 opened a new pull request, #1578:
URL: https://github.com/apache/ratis/pull/1578

   ## What changes were proposed in this pull request?
   
   This pull request fixes a remaining race in `testKillLeaderDuringReconf`.
   
   The test previously created the Raft client after calling `addNewPeers()` 
and `removePeers()`. These methods update `cluster.group` to the target 
configuration, which may contain the unstarted peer and exclude an original
   voting member that can become the new leader after the original leader is 
killed.
   
   With `SimulatedRpc`, a request sent to the unstarted peer may wait for `3` 
seconds before timing out. 
   Repeated retries against that peer can exhaust the test's waiting period 
before the `setConfiguration` request reaches the new leader. 
   
   The test then fails with an error such as:
   
   ```text
   New leader s2 is not bootstrapping peer s3
   ```
   
   ## What is the link to the Apache JIRA
   
   RATIS-2682. Use the original Raft group for client retries in 
testKillLeaderDuringReconf
   
   ## How was this patch tested?
   
   The target test passed 100 runs using 10 parallel splits with 10 iterations 
per split:
   
   https://github.com/slfan1989/ratis/actions/runs/33755713261
   


-- 
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]

Reply via email to