[ 
https://issues.apache.org/jira/browse/SOLR-18530?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nick Shanin updated SOLR-18530:
-------------------------------
    Issue Type: Test  (was: Bug)

> RecoveryAfterSoftCommitTest.test fails intermittently with 
> ClosedChannelException after the proxy of a replica is closed
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-18530
>                 URL: https://issues.apache.org/jira/browse/SOLR-18530
>             Project: Solr
>          Issue Type: Test
>          Components: Tests
>            Reporter: Nick Shanin
>            Priority: Minor
>
> AI text below
> h2. What happens
> {\{RecoveryAfterSoftCommitTest.test}} fails intermittently in CI with a 
> \{{ClosedChannelException}} on a client add, after the test closes the proxy 
> of the non-leader replica. Seen on an apache/solr CI run for an unrelated 
> change: [run 
> 37987632639|[https://github.com/apache/solr/actions/runs/37987632639]], seed 
> \{{A57A22E346C237C6}}. Local runs with the same seed on current main and on 
> the head of that change do not reproduce it.
> h2. Likely mechanism
>  * The test closes the proxy of the non-leader replica (test line 98), which 
> closes the TCP connections the client holds to that proxy.
>  * A later add can still be routed to the cut replica, because any-replica 
> routing picks it about half the time.
>  * The write commits on the server, then the response stream fails with 
> \{{ClosedChannelException}} on the stale pooled HTTP/2 connection, before the 
> client sees the close.
>  * Neither \{{CloudSolrClient}} nor \{{LBSolrClient}} retries this failure, 
> so the test fails even though the update succeeded.
> h2. Proposed fix
> In the test, route the writes made after the proxy is closed through a 
> leaders-only client, so no write depends on a connection to the cut replica. 
> No production change.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to