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]

Reply via email to