Zhengdai Hu created STORM-3098: ---------------------------------- Summary: Fix bug in filterChangingBlobsFor() in Slot.java Key: STORM-3098 URL: https://issues.apache.org/jira/browse/STORM-3098 Project: Apache Storm Issue Type: Bug Components: storm-server Affects Versions: 2.0.0 Reporter: Zhengdai Hu Fix For: 2.0.0
The following method is not implemented correctly {code:java} private static DynamicState filterChangingBlobsFor(DynamicState dynamicState, final LocalAssignment assignment) { if (!dynamicState.changingBlobs.isEmpty()) { return dynamicState; } HashSet<BlobChanging> savedBlobs = new HashSet<>(dynamicState.changingBlobs.size()); for (BlobChanging rc : dynamicState.changingBlobs) { if (forSameTopology(assignment, rc.assignment)) { savedBlobs.add(rc); } else { rc.latch.countDown(); } } return dynamicState.withChangingBlobs(savedBlobs); } {code} It doesn't modify dynamicState in anyway. The solution is to remove the negation in the first if statement. -- This message was sent by Atlassian JIRA (v7.6.3#76005)