tkhurana opened a new pull request, #2474:
URL: https://github.com/apache/phoenix/pull/2474

   ## Summary
   - Replace RuntimeException-based abort with real RegionServerServices abort 
via the HBase `Abortable` interface
   - Annotate `PhoenixRegionServerEndpoint` and `IndexRegionObserver` with 
`@CoreCoprocessor` so they can access `HasRegionServerServices` to obtain an 
`Abortable`
   - Thread the `Abortable` into `ReplicationLogGroup` and use it in `abort()` 
to trigger a proper RS shutdown
   - Unify `close()` and `closeOnError()` into a single `close(boolean 
graceful)` method using `AtomicBoolean` for thread-safe close semantics
   - Move `onExit()` off the Disruptor consumer thread to avoid blocking event 
processing during mode transitions
   - Close the log tracker and forwarder during shutdown to prevent resource 
leaks
   - In mode impls (`SyncModeImpl`, `SyncAndForwardModeImpl`, 
`StoreAndForwardModeImpl`), throw `IOException` instead of calling `abort()` 
directly, letting the Disruptor exception handler drive the abort path 
consistently
   
   ## Test plan
   - [ ] Unit tests in `ReplicationLogGroupTest` updated to expect 
`IOException` / `PhoenixWALSyncTimeoutException` instead of `RuntimeException`
   - [ ] All 18 HABaseIT integration tests pass
   - [ ] Verify graceful close drains the Disruptor with a bounded timeout 
before halting


-- 
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]

Reply via email to