RejectedExecutionException? I don't think I was using anything concurrent?

1,026 views
Skip to first unread message

sugarste...@gmail.com

unread,
Jul 17, 2015, 1:17:47 PM7/17/15
to clo...@googlegroups.com
My app starts up, runs for a few minutes, and then:

#<RejectedExecutionException java.util.concurrent.RejectedExecutionException: Task java.util.concurrent.FutureTask@4fe887e6 rejected from java.util.concurrent.ThreadPoolExecutor@aea107f[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 3]>

This is a very simple app, and I am not aware of using any concurrency. I am not using Futures or Promises or pmap or anything else I can think of. My first hunch would be this comes from some library I am using, but I am not sure what. I searched on Google but none of the reported problems seem to apply to me. This is what I am using, do any of these seem likely to throw this error?

[org.clojure/clojure "1.6.0"]
                 [com.taoensso/timbre "4.0.2"]
                 [dire "0.5.1"]
                 [slingshot "0.12.2"]
                 [org.clojure/data.json "0.2.5"]
                 [org.clojure/tools.namespace "0.2.4"]
             [me.raynes/fs "1.4.4"]
                 [clj-stacktrace "0.2.8"]
                 [overtone/at-at "1.2.0"]
                 [org.clojure/core.cache "0.6.4"]
                 [cheshire "5.5.0"]
                 [com.taoensso/carmine "2.11.1"]




sugarste...@gmail.com

unread,
Jul 17, 2015, 2:01:05 PM7/17/15
to clo...@googlegroups.com

Okay, this error seems to be triggered by a NullPointerException which seems to arise when I try to fetch a non-existent document out of Redis. I am a bit of a noob, so perhaps someone can explain how this works. I'm not aware of using any of Clojure's concurrency tools in this (very simple) app, so how might the NullPointerException lead to RejectedExecutionException? 

Zach Tellman

unread,
Jul 17, 2015, 2:07:48 PM7/17/15
to clo...@googlegroups.com
A RejectedExecutionException is thrown when a thread-pool's queue is full.  Try using 'jstack' to take a thread dump, and see who has spun up a thread pool under the covers.  Possible culprits include 'at-at' and 'carmine'.  
Reply all
Reply to author
Forward
0 new messages