ExecutionsService's ExecutionObject cache only calls shutdown() (which tears down that execution's dedicated Executors.newFixedThreadPool) on eviction, gated by app.executions.cache.max-size (default 1000) and app.executions.cache.final-ttl-ms (default 30 minutes). The Spring test context - and its singleton ExecutionsService - is reused across the whole suite, and a full run finishes in well under 30 minutes with far fewer than 1000 executions, so none of that cleanup ever fires: every execution's thread pool stays alive simultaneously for the rest of the run. That's a plausible contributor to the loop-container tests occasionally missing their polling deadline under full-suite load (they pass reliably in isolation, where far fewer executions accumulate). Lowering both knobs for tests only keeps the live thread-pool count small throughout a run; eviction only ever targets already-finished executions (see evictIfNeeded/evictFinalStateByTtl), so this cannot disrupt an in-flight test. |
||
|---|---|---|
| .mvn/wrapper | ||
| src | ||
| .gitattributes | ||
| .gitignore | ||
| Dockerfile | ||
| mvnw | ||
| mvnw.cmd | ||
| ollama-preloaded-docker | ||
| pom.xml | ||