Github user revans2 commented on the pull request:

    https://github.com/apache/storm/pull/532#issuecomment-157076377
  
    @HeartSaVioR I would like to see ABP work correctly be default on the Shell 
bolt, and have it work correctly when TOPOLOGY_SHELLBOLT_MAX_PENDING is off, 
but I don't think a change to the protocol is going work.  The buffer that 
fills up is in java, not in the external process.  Having the ability for the 
external process to throttle only really makes since if the external process is 
buffering tuples somehow and then it can just stop reading to let us know to 
stop as well.
    
    Perhaps what we can just have a default value for 
TOPOLOGY_SHELLBOLT_MAX_PENDING.  The only reason we would want to turn it off 
completely is that we have a deadlock if taskIds are requested.  Here we write 
a message back into _pendingWrites, which with a hard coded limit could cause 
the only thread that reads from _pendingWrites to block trying to write to it.  
If we can fix this bug then I would say we just set a default value.


---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to