From b7af4fa902726acc7a4cf774222b741bae95c931 Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Wed, 19 Jun 2019 11:41:36 +0200 Subject: [PATCH] shutdown jgit workqueue, when context is destroyed --- .../GitWorkQueueShutdownListener.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitWorkQueueShutdownListener.java diff --git a/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitWorkQueueShutdownListener.java b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitWorkQueueShutdownListener.java new file mode 100644 index 0000000000..e3dcd7e564 --- /dev/null +++ b/scm-plugins/scm-git-plugin/src/main/java/sonia/scm/repository/GitWorkQueueShutdownListener.java @@ -0,0 +1,26 @@ +package sonia.scm.repository; + +import org.eclipse.jgit.lib.internal.WorkQueue; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import sonia.scm.plugin.Extension; + +import javax.servlet.ServletContextEvent; +import javax.servlet.ServletContextListener; + +@Extension +public class GitWorkQueueShutdownListener implements ServletContextListener { + + private static final Logger LOG = LoggerFactory.getLogger(GitWorkQueueShutdownListener.class); + + @Override + public void contextInitialized(ServletContextEvent sce) { + + } + + @Override + public void contextDestroyed(ServletContextEvent sce) { + LOG.warn("shutdown jGit WorkQueue executor"); + WorkQueue.getExecutor().shutdown(); + } +}