diff --git a/kie-server-parent/kie-server-services/kie-server-services-optaplanner/src/main/java/org/kie/server/services/optaplanner/OptaplannerKieServerExtension.java b/kie-server-parent/kie-server-services/kie-server-services-optaplanner/src/main/java/org/kie/server/services/optaplanner/OptaplannerKieServerExtension.java
index <HASH>..<HASH> 100644
--- a/kie-server-parent/kie-server-services/kie-server-services-optaplanner/src/main/java/org/kie/server/services/optaplanner/OptaplannerKieServerExtension.java
+++ b/kie-server-parent/kie-server-services/kie-server-services-optaplanner/src/main/java/org/kie/server/services/optaplanner/OptaplannerKieServerExtension.java
@@ -73,7 +73,7 @@ public class OptaplannerKieServerExtension
             poolSize--;
         }
         this.threadPool = new ThreadPoolExecutor(
-                2, // core size
+                Math.min(2, poolSize), // core size
                 poolSize, // max size
                 120, // idle timeout
                                                  TimeUnit.SECONDS,
PLANNER-<I> DROOLS-<I> OptaPlanner extension doesn't run on 1 processor machine: it throws an IllegalArgumentException on ThreadPoolExecutor (#<I>)

(cherry picked from commit e<I>beacd0d1abd8b<I>c2e<I>c<I>a8de<I>)