Steps to reproduce
- Start XWiki with the extension index enabled (default)
- Stop XWiki while the extension index job is validating extensions (e.g. right after startup)
Expected XWiki stops without error; the extension index is updated again at the next start. Actual An error is logged for each extension the job still validates after the extension index store is disposed:
Analysis The extension index job runs in its own job thread and nothing stops it when XWiki stops: ExtensionIndexJobScheduler#dispose() only stops its scheduling executor. ExtensionIndexStore#dispose() then disposes the extension.index cache (added by XWIKI-23322), and every following store call of the job fails; ExtensionIndexJob#validateExtensions logs each failure as an error. Found in the logs of the flavor UI functional tests on CI (master build 9025), when XWiki is stopped at the end of the tests. |