RejectedExecutionException и закрытие параллелизма - PullRequest
3 голосов
/ 10 августа 2011

При развертывании некоторого кода clojure на новый сервер у меня были проблемы с RejectedExecutionException и агентами, не отвечающими на запросы. Небольшие примеры в REPL, такие как

(pmap #(% %) (range 10))

вроде бы нормально работает. Однако, запустив pmap или pcalls throw RejectedExecutionException s после использования некоторого (различного числа, но не более чем нескольких) ленивого seq. Агенты, для сравнения, не выбрасывают RejectedExecutionException. Агенты могут быть инициализированы, но не выполнять никаких действий, отправленных с send или send-off.

Проблема с агентами очень похожа на симптомы, описанные здесь . Кроме того, я нигде не использую shutdown-agents.

Заранее извиняюсь за отсутствие воспроизводимого примера. Моя основная проблема с этой проблемой - невозможность воспроизвести подобное поведение на других машинах. Любые предложения приветствуются!

Использование 64-битной версии HotSpot Java 1.6.0_20 и clojure 1.2.1.

1 Ответ

1 голос
/ 10 августа 2011

Вы, вероятно, используете сломанную версию Leiningen или имеете несколько конфликтующих версий и / или swank.См. https://github.com/technomancy/leiningen/issues/228 - одно из многочисленных обсуждений по этому вопросу, и единственное, которое я могу удобно найти в данный момент.

...