Github user srdo commented on a diff in the pull request:
https://github.com/apache/storm/pull/2762#discussion_r202346634
--- Diff:
storm-client/src/jvm/org/apache/storm/messaging/netty/StormClientHandler.java
---
@@ -47,12 +47,20 @@ public void channelRead(ChannelHandlerContext ctx,
Object message) throws Except
BackPressureStatus status = (BackPressureStatus) message;
if (status.bpTasks != null) {
for (Integer bpTask : status.bpTasks) {
- remoteBpStatus[bpTask].set(true);
+ try {
+ remoteBpStatus[bpTask].set(true);
+ } catch (ArrayIndexOutOfBoundsException e) {
--- End diff --
I'm a little surprised that an uncaught exception here doesn't crash the
worker though? I'd expect the worker to crash, and for the worker to come back
up with backpressure disabled?
---