Details
-
Improvement
-
Resolution: Unresolved
-
Major
-
None
-
18.8.0
-
None
-
Unknown
-
Description
On shutdown DefaultJobExecutor.dispose calls shutdownNow() without waiting, and a job status is only persisted when the job finishes. A long job (space move, extension upgrade) interrupted by a container stop ends half done, with no stored status and nothing to show to the user.
Proposal: a job.shutdownTimeout property; dispose waits up to that long, then cancels and interrupts; an interrupted job is stored as canceled with its error; the job status store flushes its asynchronous writes before the component manager disposes the stores.
Attachments
Issue Links
- blocks
-
XWIKI-25248 Stop the remote observation channels last when XWiki stops
-
- Open
-
- is related to
-
XWIKI-25249 Display jobs interrupted before completion as interrupted instead of failed
-
- Open
-