christophd commented on PR #27440: URL: https://github.com/apache/camel/pull/27440#issuecomment-6058771344
Addressing the latest review feedback from @gnodet-bot — summary of what's in this push: **Fixed in this push:** - **`domainLocks.remove` race** (concurrency): Removed `domainLocks.remove(domain)` from `unregisterEndpoint()` entirely. Lock objects now accumulate in the map (they're tiny `Object` instances), preventing the window where a concurrent `acquireOrRegister()` could `computeIfAbsent` a new lock object and operate on a different monitor. - **`doStop()` nulling `api` race** (concurrency): `acquireOrRegister()` now captures the volatile `api` reference into a local variable at the top and checks for null before proceeding. All reads inside the method use the local reference, so a concurrent `doStop()` setting `api = null` cannot cause an NPE. **Already fixed in previous push (replies posted):** - Per-domain locking via `ConcurrentHashMap<String, Object> domainLocks` - `AtomicBoolean shutdownCalled` idempotency guard in `DomainBinding` - TLS labels changed to `"security"` only - Test domain uses `"shared-bad"` with explanatory comment _Claude Code on behalf of christophd_ -- 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]
