Commits
Tarun Sukhani authored 86151428173
fix(shutdown): resolve ApplicationClassloader/JobsPlugin shutdown deadlock + graceful request drain (PF-119, release 1.13.29) Register ApplicationClassloader parallel-capable so loadClass uses per-name locks instead of the instance monitor it shared with getAllClasses (the lock-order inversion that wedged Play.stop). Cache @OnApplicationStop jobs at start so onApplicationStop no longer re-scans the classloader at shutdown. Sequence the Netty drain inside Play's ordered shutdown hook, and add a lock-free in-flight request drain (Invoker.awaitQuiescence + Server two-phase stop-accept/close) ahead of plugin shutdown. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>