GitHub user agresch opened a pull request:
https://github.com/apache/storm/pull/2718
STORM-3103 allow nimbus to shutdown properly
Nimbus registers exitProcess() for the StormTimer.onKill routine. This
does not return once called. This basically locks up the timer with active
being set.
Then when Nimbus shuts down, it calls timer.close(). Since the timer is
stuck in the onKill routine forever with active set on, timer close is
deadlocked waiting for the join() to occur here:
https://github.com/apache/storm/blob/master/storm-client/src/jvm/org/apache/storm/StormTimer.java#L173
The proposed fix is to just set active to false before calling the onKill()
for the timer.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/agresch/storm agresch_timer
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/storm/pull/2718.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #2718
commit 5c5d071305785fb322413b0a39d3fb6d19a83a9d
Author: Aaron Gresch
Date: 2018-06-13T20:31:15Z
STORM-3103 allow nimbus to shutdown properly
---