Github user revans2 commented on a diff in the pull request: https://github.com/apache/storm/pull/2762#discussion_r202431655 --- Diff: storm-client/src/jvm/org/apache/storm/messaging/netty/StormClientHandler.java --- @@ -47,12 +47,24 @@ 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) { + //Just in case we get something we are confused about + // we can continue processing the rest of the tasks + LOG.error("BP index out of bounds {}", e); --- End diff -- Yes, because when this was happening it was happening everywhere, and there is only one line under the try catch block so there isn't a lot of confusion about what happened.
---