Slick is backed by a custom executor, which is a wrapper around java.util.concurrent.ThreadPoolExecutor
. This executor appears to be used with the default rejected execution handler ThreadPoolExecutor.AbortPolicy
, which throws RejectedExecutionException
when the task queue becomes full. This is not desired behavior for my
use case: I'd rather block the fast producer than fail it, — which is
exactly what the pre-canned ThreadPoolExecutor.CallerRunsPolicy
would do if I could find a way to pass it to Slick.
Thanks in advance,
—Igor.