[
https://issues.apache.org/jira/browse/SOLR-18188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18091036#comment-18091036
]
Chris M. Hostetter commented on SOLR-18188:
-------------------------------------------
[~dsmiley] - I'm also suspicious that these changes may have broken something
related to the way *some* tests use SocketProxy?
In particular: {{RecoveryAfterSoftCommitTest.test}} and
{{ReplicationFactorTest.test}} are test methods that have historically had an
effectively ~0% failure rate on jenkins – but somewhere between 2026-06-01 and
2026-06-08 something changed to jump the jenkins failure rates up to 5/8%.
The seeds don't reliably reproduce, but all the failures i spot checked look
like this in the logs...
{noformat}
> org.apache.solr.client.solrj.SolrServerException:
java.nio.channels.ClosedChannelException
> at
__randomizedtesting.SeedInfo.seed([7BA17D6439165958:F3F542BE97EA34A0]:0)
> at
app//org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:680)
> at
app//org.apache.solr.client.solrj.impl.LBSolrClient.request(LBSolrClient.java:582)
> at
app//org.apache.solr.client.solrj.impl.CloudSolrClient.sendRequest(CloudSolrClient.java:1085)
> at
app//org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:720)
> at
app//org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:642)
> at
app//org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:302)
> at
app//org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:167)
> at
app//org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:132)
> at
app//org.apache.solr.client.solrj.SolrClient.add(SolrClient.java:148)
> at
app//org.apache.solr.cloud.RecoveryAfterSoftCommitTest.test(RecoveryAfterSoftCommitTest.java:106)
{noformat}
{noformat}
> org.apache.solr.client.solrj.SolrServerException: IOException occurred
when talking to server at:
http://127.0.0.1:40907/solr/repfacttest_c8n_1x3_shard1_replica_n2/update
> at
__randomizedtesting.SeedInfo.seed([6386738746231ADE:EBD24C5DE8DF7726]:0)
> at
app//org.apache.solr.client.solrj.jetty.HttpJettySolrClient.request(HttpJettySolrClient.java:507)
> at
app//org.apache.solr.client.solrj.jetty.HttpJettySolrClient.lambda$requestWithBaseUrl$0(HttpJettySolrClient.java:529)
> at
app//org.apache.solr.client.solrj.jetty.HttpJettySolrClient.requestWithBaseUrl(HttpJettySolrClient.java:548)
> at
app//org.apache.solr.client.solrj.jetty.HttpJettySolrClient.requestWithBaseUrl(HttpJettySolrClient.java:529)
> at
app//org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:625)
> at
app//org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:613)
> at
app//org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:638)
> at
app//org.apache.solr.client.solrj.impl.LBSolrClient.request(LBSolrClient.java:582)
> at
app//org.apache.solr.client.solrj.impl.CloudSolrClient.sendRequest(CloudSolrClient.java:1564)
> at
app//org.apache.solr.client.solrj.impl.CloudSolrClient.requestWithRetryOnStaleState(CloudSolrClient.java:1199)
> at
app//org.apache.solr.client.solrj.impl.CloudSolrClient.request(CloudSolrClient.java:1121)
> at
app//org.apache.solr.cloud.ReplicationFactorTest.runAndGetAchievedRf(ReplicationFactorTest.java:495)
> at
app//org.apache.solr.cloud.ReplicationFactorTest.sendDoc(ReplicationFactorTest.java:490)
> at
app//org.apache.solr.cloud.ReplicationFactorTest.testRf3(ReplicationFactorTest.java:336)
> at
app//org.apache.solr.cloud.ReplicationFactorTest.test(ReplicationFactorTest.java:88)
...
> Caused by:
> java.nio.channels.ClosedChannelException
> at
org.eclipse.jetty.http2.HTTP2Session$StreamsState.onShutdown(HTTP2Session.java:2141)
{noformat}
_*In both case, the requests that (ultimately) trigger ClosedChannelExceptions
are the first attempt to add a document after closing a proxy.*_
Using my shell access on fucit.org, I grepped all of the jenkins logs i
currently have copies of (i only keep them for ~24 hours) and all occurrences
of java.nio.channels.ClosedChannelException in the test logs were from these 2
tests (even though lots of other tests also close proxies)
Any guesses as to what might be special in these two tests based on your
changes here?
> solr-test-framework: Remove Apache HttpClient usages
> ----------------------------------------------------
>
> Key: SOLR-18188
> URL: https://issues.apache.org/jira/browse/SOLR-18188
> Project: Solr
> Issue Type: Task
> Components: test-framework, Tests
> Reporter: David Smiley
> Assignee: David Smiley
> Priority: Major
> Labels: pull-request-available
> Fix For: 10.1
>
> Time Spent: 6h 50m
> Remaining Estimate: 0h
>
> As of this writing, the last usages of Apache HttpClient are in Solr's tests.
> This issue aims to remove it completely. But it's a lot of work.
> Some possible steps:
> * Remove tests for our HttpSolrClient & friends (fundamentally based on
> Apache HttpClient)
> * Replace usages of HttpSolrClient.getHttpClient with
> HttpJettySolrClient.getHttpClient
> * Replace usages of HttpSolrClient.getBaseURL by introducing a new base
> client that has this method. Or access similarly from Jetty when easily
> available.
> * of course, stop using HttpSolrClient & friends. Maybe class-by-class.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]