diff --git a/WORKSPACE b/WORKSPACE
index 91a180a..32a2c23 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -3,7 +3,7 @@
 load("//:bazlets.bzl", "load_bazlets")
 
 load_bazlets(
-    commit = "b07aa8462f2618a83f3b52d6150faa831b24d3e3",
+    commit = "ec949feac1b9dae6cc2c8c25d254f34924c54296",
     #local_path = "/home/<user>/projects/bazlets",
 )
 
diff --git a/external_plugin_deps.bzl b/external_plugin_deps.bzl
index f4828c5..ceca8a6 100644
--- a/external_plugin_deps.bzl
+++ b/external_plugin_deps.bzl
@@ -3,8 +3,8 @@
 def external_plugin_deps():
     maven_jar(
         name = "mockito",
-        artifact = "org.mockito:mockito-core:2.27.0",
-        sha1 = "835fc3283b481f4758b8ef464cd560c649c08b00",
+        artifact = "org.mockito:mockito-core:2.28.2",
+        sha1 = "91110215a8cb9b77a46e045ee758f77d79167cc0",
         deps = [
             "@byte-buddy//jar",
             "@byte-buddy-agent//jar",
@@ -125,8 +125,8 @@
     maven_jar(
         name = "jgit",
         artifact =
-            "org.eclipse.jgit:org.eclipse.jgit:4.7.9.201904161809-r",
-        sha1 = "14fb9628876e69d1921776c84c7343ddabe7db31",
+            "org.eclipse.jgit:org.eclipse.jgit:4.11.9.201909030838-r",
+        sha1 = "3bc74ffed6186bf2fc37404216e5ef16f904d0b0",
     )
 
     maven_jar(
@@ -153,28 +153,28 @@
         sha1 = "ed8b772eb077a9cb50e44e90899c66a9a6c00e67",
     )
 
-    TEST_CONTAINERS_VERS = "1.11.2"
+    TESTCONTAINERS_VERS = "1.12.3"
 
     maven_jar(
         name = "testcontainers",
-        artifact = "org.testcontainers:testcontainers:" + TEST_CONTAINERS_VERS,
-        sha1 = "eae47ed24bb07270d4b60b5e2c3444c5bf3c8ea9",
+        artifact = "org.testcontainers:testcontainers:" + TESTCONTAINERS_VERS,
+        sha1 = "e424a4549640e120acceac641ac909fcda58bf62",
     )
 
     maven_jar(
         name = "testcontainers-database-commons",
-        artifact = "org.testcontainers:database-commons:" + TEST_CONTAINERS_VERS,
-        sha1 = "f49cf9cd5f9c484f7c4cb24270d7cc8aae0bb188",
+        artifact = "org.testcontainers:database-commons:" + TESTCONTAINERS_VERS,
+        sha1 = "69a857af8c90be1f2ba6d7f70a59bd5687854e8f",
     )
 
     maven_jar(
         name = "testcontainers-jdbc",
-        artifact = "org.testcontainers:jdbc:" + TEST_CONTAINERS_VERS,
-        sha1 = "eaa9b0fa7a31bbfa03ad3c6d51808397b1fbdc40",
+        artifact = "org.testcontainers:jdbc:" + TESTCONTAINERS_VERS,
+        sha1 = "8f86e3ebf31b3a0439ba537bba770b5be219b55b",
     )
 
     maven_jar(
         name = "testcontainers-postgres",
-        artifact = "org.testcontainers:postgresql:" + TEST_CONTAINERS_VERS,
-        sha1 = "a48ea341efa0ec078ae4a717459252aebc7bff5d",
+        artifact = "org.testcontainers:postgresql:" + TESTCONTAINERS_VERS,
+        sha1 = "946fc6dc021b0b760da3fd005d2fd871fce10be4",
     )
diff --git a/src/main/java/com/ericsson/gerrit/plugins/gcconductor/evaluator/EvaluatorExecutorProvider.java b/src/main/java/com/ericsson/gerrit/plugins/gcconductor/evaluator/EvaluatorExecutorProvider.java
index 7cf13af..67b6958 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/gcconductor/evaluator/EvaluatorExecutorProvider.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/gcconductor/evaluator/EvaluatorExecutorProvider.java
@@ -20,11 +20,11 @@
 import com.google.inject.Inject;
 import com.google.inject.Provider;
 import com.google.inject.Singleton;
-import java.util.concurrent.ScheduledThreadPoolExecutor;
+import java.util.concurrent.ExecutorService;
 
 @Singleton
-class EvaluatorExecutorProvider implements Provider<ScheduledThreadPoolExecutor>, ShutdownListener {
-  private WorkQueue.Executor executor;
+class EvaluatorExecutorProvider implements Provider<ExecutorService>, ShutdownListener {
+  private ExecutorService executor;
 
   @Inject
   EvaluatorExecutorProvider(
@@ -35,12 +35,11 @@
   @Override
   public void onShutdown() {
     executor.shutdownNow();
-    executor.unregisterWorkQueue();
     executor = null;
   }
 
   @Override
-  public ScheduledThreadPoolExecutor get() {
+  public ExecutorService get() {
     return executor;
   }
 }
diff --git a/src/main/java/com/ericsson/gerrit/plugins/gcconductor/evaluator/EvaluatorModule.java b/src/main/java/com/ericsson/gerrit/plugins/gcconductor/evaluator/EvaluatorModule.java
index 8ef2a6b..a421ebe 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/gcconductor/evaluator/EvaluatorModule.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/gcconductor/evaluator/EvaluatorModule.java
@@ -25,7 +25,7 @@
 import com.google.gerrit.server.git.validators.UploadValidationListener;
 import com.google.inject.Provides;
 import com.google.inject.internal.UniqueAnnotations;
-import java.util.concurrent.ScheduledThreadPoolExecutor;
+import java.util.concurrent.ExecutorService;
 import org.eclipse.jgit.transport.PostUploadHook;
 
 /** Configures bindings of the evaluator. */
@@ -35,7 +35,7 @@
     install(new CommonModule(EvaluatorConfig.class));
     listener().to(OnPluginLoadUnload.class);
 
-    bind(ScheduledThreadPoolExecutor.class)
+    bind(ExecutorService.class)
         .annotatedWith(EvaluatorExecutor.class)
         .toProvider(EvaluatorExecutorProvider.class);
     bind(ShutdownListener.class)
