Bound translation concurrency to 3 threads to prevent DB pool exhaustion

FixSecurityService
Shipped
April 17, 2026 at 5:24 AM UTC
Author
Kamo
Commit
292e334

Unbounded @Async (SimpleAsyncTaskExecutor) created 50 threads simultaneously when the retry scheduler fired, each opening a DB transaction and draining HikariCP's connection pool. Add a dedicated 'translationExecutor' capped at 3 threads (queue 500) and bind translateCommitLog to it.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing