nick-boss-tech commented on PR #5301:
URL: https://github.com/apache/solr/pull/5301#issuecomment-6673432147

   🤖 *AI text below* 🤖 *(reviewed by Nick Shanin)*
   
   I found another ordering case during session replacement: if the 
replacement's `Disconnected` is applied before its delayed `SyncConnected`, the 
connected callback is correctly rejected. If that session then expires, its 
expiration callback waits behind the reconnect callback that is still waiting 
for a connection.
   
   The [follow-up on your exact 
head](https://github.com/nick-boss-tech/solr/compare/01e820f0539cddc4697d26176d216614a776a99a...dfde9bde0a348ad44e6f6ceec197d478ef11bfd0)
 lets the connection wait detect a terminal replacement and retry, while 
retaining your sequence guard. It adds five ordinary deterministic tests. The 
nightly stress test waits for disconnect processing and uses `halfClose()` to 
drop client connections while keeping its proxy listener open.
   
   Verified on Linux at `dfde9bde0a348ad44e6f6ceec197d478ef11bfd0`, seed 
`5301C0DE`:
   
   - Five focused tests and nine neighboring tests passed; one existing ignored 
test remains skipped.
   - The enabled nightly stress test passed twice, each covering 25 
flaps/expirations. Reverting only its proxy driver to close/reopen reproduced 
the expiration-recovery failure with connection-refused responses.
   - Restoring your original `ConnectionManager.java` made the 
replacement-expiration test fail at its bounded recovery assertion. A separate 
accept-all mutation failed all three stale-state tests. The fifth in-order test 
is positive coverage only.
   - Tidy, source-pattern validation, changelog generation and `check -x test` 
passed. Error Prone compilation passed with `-Pjavac.failOnWarnings=false`: its 
only warning is the existing `FloatRangeFieldTest.java:328` precision warning, 
also reproduced at your head. No new diagnostic appeared.
   
   The branch preserves your commit ancestry. To take the tested changes:
   
   ```sh
   git switch SOLR-18623-connection-manager-event-ordering
   git fetch https://github.com/nick-boss-tech/solr.git 
solr-18623-reconnect-liveness
   git merge --ff-only dfde9bde0a348ad44e6f6ceec197d478ef11bfd0
   ```
   


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to