ashokkumarrathore commented on PR #462:
URL: https://github.com/apache/livy/pull/462#issuecomment-4751685891

   Pushed an update that folds in five additional Kubernetes/session fixes that 
were developed on top of this branch (authored by @vallenki). All are rebased 
onto current `master`, compile cleanly against kubernetes-client 6.8.1, pass 
scalastyle/checkstyle, and have unit tests:
   
   1. **Livy Interactive session fixes** — adds 
`livy.rsc.driver.address.use-hostname` (RSCConf) so the driver's reported 
hostname is used instead of the socket IP, which is needed for Kubernetes + 
Istio setups.
   2. **Reduce Kubernetes API load in polling** — narrows the driver lookup to 
`spark-role=driver` at the API server (single-pod LIST instead of all executor 
pods) and gates the executor LIST behind a new flag 
`livy.server.kubernetes.executor-tracking.enabled` (default `true`, so no 
behavior change). Large clusters can disable it to skip per-executor LISTs.
   3. **SessionManager refresh + `/recovery` operator endpoint** — a 
superuser-guarded (`livy.superusers`, returns 403 otherwise) REST endpoint to 
re-scan the recovery state store and import sessions written by another Livy 
server, without a restart.
   4. **Fix recovery-file leak after session deletion** — `kill()` now removes 
the app from the shared monitor queue and the monitor early-returns after a 
terminal state, so a deleted session's recovery file is no longer resurrected 
by an in-flight monitor tick. `killed` becomes `AtomicBoolean` for cross-thread 
visibility.
   5. **Fix `Promise.failure` race that falsely failed healthy apps** — 
switches the catch path to `Promise.tryFailure`, matching the `trySuccess` on 
the success path, so a late failure on an already-completed promise is dropped 
instead of flipping a healthy app to FAILED. This became reachable once 
`app-lookup.thread-pool.size > 1`.
   
   Combined diff is ~545 insertions across 16 files. Happy to split any of 
these into separate PRs if you'd prefer to keep this one scoped purely to 
multi-namespace support — just let me know.
   


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