-
Notifications
You must be signed in to change notification settings - Fork 674
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SOLR-17300: Copy existing listeners on re-creation of Http2SolrClient #2467
SOLR-17300: Copy existing listeners on re-creation of Http2SolrClient #2467
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Proposed CHANGES.txt under improvements:
SOLR-17300: Http2SolrClient.Builder.withHttpClient now copies HttpListenerFactory (e.g. for auth, metrics, traces, etc.)
solr/core/src/test/org/apache/solr/cloud/RecoveryZkTestWithAuth.java
Outdated
Show resolved
Hide resolved
solr/solrj/src/java/org/apache/solr/client/solrj/impl/Http2SolrClient.java
Show resolved
Hide resolved
@BeforeClass | ||
public static void setupCluster() throws Exception { | ||
cluster = | ||
configureCluster(2) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
will the test do its job with one node? If so, reduce resources to help make our tests faster.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes one node will do. +1 to reduce resources!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Someday in dev-docs, we ought to have "The list of things @dsmiley looks for when writing tests" ;-)
Hmmm TestInterleavingTransformer failed and it isn't a flapper: |
Yup it's new. But ran successfully on my machine, tried multiple times now. Should we consider enabling the re-running failing test strategy, or I do not know If it's enabled already or not, to check whether it's flaky or not? https://docs.gradle.com/develocity/flaky-test-detection/ Evidence To further support it: Flaky Tests at Google and How We Mitigate Them
Cost of Flaky Tests in CI: An Industrial Case Study
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Flaky test detection & running a failing test again is a topic that should be brought to the dev list. I'd absolutely love to see that be worked on! Would probably start with us using https://github.com/gradle/test-retry-gradle-plugin which is referred to by GE.
You should trigger a re-run of the failed build; it doesn't take long for Crave's 96-core beast to run all tests.
Any way, +1 for you to merge with your newfound privileges to do so. Take care to edit the commit message to clean it up. I like to take the CHANGES.txt text and paste it in and maybe edit it a bit, and then add further detail if warranted (e.g. why you deprecated something).
If you don't have privileges to do these things then you have yet to complete your onboarding instructions involving GitHub.
https://issues.apache.org/jira/browse/SOLR-17300
Instead of #2462, this PR would copy the existing listeners to the new Http2SolrClient. This way re-creating client not requires to call explicitly
Builder#withListenerFactory
to copy existing listeners aswithHttpClient
method automatically takes care of that.Added #2462 test case here.
Checklist
Please review the following and check all that apply:
main
branch../gradlew check
.