Github user revans2 commented on the pull request: https://github.com/apache/storm/pull/532#issuecomment-156129284 I'm not sure I like the delay especially in seconds. I have been playing around with performance and we could easily process tens of thousands of tuples in a second. 1 second feels like way too long of a time for a delay. Also reading through the code I think we do get ABP when TOPOLOGY_SHELLBOLT_MAX_PENDING is set. Unless the bolt is explicitly multi-threaded we only have a single thread of execution. So when the bolt is processing data it is not reading more tuples to process. On all POSIX systems, and I assume windows as well stdin has a limited buffer size, so when that buffer fills up because the process is doing other things the BoltWriterRunnable thread will block, and then _pendingWrites will fill up, and the emit thread will block, and the input queue will backup. I am happy to write a test and verify that it works.
--- 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. ---