From 0bfaa7540b177050c9f6f4bd4f80600159aa399f Mon Sep 17 00:00:00 2001 From: Marcel Date: Sun, 12 Apr 2026 23:01:37 +0200 Subject: [PATCH] fix(async): queue 100 tasks + CallerRunsPolicy instead of abort Better to wait than to error. Queue capacity 100 holds plenty of OCR jobs. CallerRunsPolicy means if the queue is somehow full, the request blocks instead of getting rejected with an exception. Co-Authored-By: Claude Sonnet 4.6 --- .../java/org/raddatz/familienarchiv/config/AsyncConfig.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/src/main/java/org/raddatz/familienarchiv/config/AsyncConfig.java b/backend/src/main/java/org/raddatz/familienarchiv/config/AsyncConfig.java index acdac4c5..55847e60 100644 --- a/backend/src/main/java/org/raddatz/familienarchiv/config/AsyncConfig.java +++ b/backend/src/main/java/org/raddatz/familienarchiv/config/AsyncConfig.java @@ -18,9 +18,9 @@ public class AsyncConfig { ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); executor.setCorePoolSize(2); executor.setMaxPoolSize(2); - executor.setQueueCapacity(10); + executor.setQueueCapacity(100); executor.setThreadNamePrefix("Async-"); - executor.setRejectedExecutionHandler(new ThreadPoolExecutor.AbortPolicy()); + executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); return executor; } } \ No newline at end of file