Github user chawco commented on the issue:
    So, there's some ambiguity in place here that would need to get resolved. 
Basically, there's two sources for InterruptedException/InterruptedIOException 
-- one from Storm itself, and one from the user's code (See: 
[STORM-2194]( If we want to 
have different behaviour from these two sources we do need some solution to 
disambiguate the uses.
    Basically, the problem is this: If anything in the user's thread raises 
these exceptions, the executor thread will terminate *but the worker will not*. 
This leaves the entire topology in a zombified state. I find it difficult to 
see that this behaviour is "as intended". 
    @revans2 can you suggest a way we can disambiguate between Storm initiated 
and user initiated exceptions here? I'm having a real tough time thinking how 
we could accomplish that. Alternatively, can you propose an alternate 
implementation for signalling this shutdown? I'm happy to take on that work to 
make things shutdown in a more appropriate manner, as long as we get to fix 
this zombie topology behaviour.

If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at or file a JIRA ticket
with INFRA.

Reply via email to