serhiy-bzhezytskyy opened a new pull request, #5020: URL: https://github.com/apache/solr/pull/5020
https://issues.apache.org/jira/browse/SOLR-18497 # Description Several RELOAD requests for a core that failed to load each create the core: the first succeeds, the others fail on the index lock with HTTP 500 and record a new init failure, so a serving core stays listed in `initFailures`. # Solution `CoreContainer.reload` takes the per-core reservation before creating the core from its descriptor; `waitAddPendingCoreOps` returns the core if it was loaded while waiting, and `reload` now skips the creation in that case. Written with Claude Code. # Tests `TestCoreContainer.testConcurrentReloadOfFailedCore` runs eight reloads together after the configuration is fixed. On main it fails every time with `Unable to create core [col_late]` (3 runs of 3); with the change it passes (3 runs of 3). `TestCoreContainer`, `TestCoreDiscovery`, `TestLazyCores` and `CoreAdminHandlerTest` pass; `compileJava` with errorprone and `spotlessCheck` are clean. # Checklist - [x] I have reviewed the guidelines for [How to Contribute](https://github.com/apache/solr/blob/main/CONTRIBUTING.md) and my code conforms to the standards described there to the best of my ability. - [x] I have created a Jira issue and added the issue ID to my pull request title. - [x] I have given Solr maintainers [access](https://help.github.com/en/articles/allowing-changes-to-a-pull-request-branch-created-from-a-fork) to contribute to my PR branch. (optional but recommended, not available for branches on forks living under an organisation) - [x] I have developed this patch against the `main` branch. - [ ] I have run `./gradlew check`. - [x] I have added tests for my changes. - [ ] I have added documentation for the [Reference Guide](https://github.com/apache/solr/tree/main/solr/solr-ref-guide) - [ ] I have added a [changelog entry](https://github.com/apache/solr/blob/main/dev-docs/changelog.adoc) for my change -- 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]
