Repository: nifi Updated Branches: refs/heads/master ff98d823e -> 45ca97849
NIFI-1830: Fixed problems in the merging logic for Drop FlowFile Requests. This closes #394 Project: http://git-wip-us.apache.org/repos/asf/nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/45ca9784 Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/45ca9784 Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/45ca9784 Branch: refs/heads/master Commit: 45ca978498725ca19530ed51138a252d17e4d676 Parents: ff98d82 Author: Mark Payne <[email protected]> Authored: Fri Apr 29 16:07:37 2016 -0400 Committer: Matt Gilman <[email protected]> Committed: Mon May 2 08:46:50 2016 -0400 ---------------------------------------------------------------------- .../cluster/manager/impl/WebClusterManager.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/nifi/blob/45ca9784/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java index 88da5ff..fbf400b 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java @@ -2990,9 +2990,18 @@ public class WebClusterManager implements HttpClusterManager, ProtocolHandler, C long droppedSize = 0; DropFlowFileState state = null; + boolean allFinished = true; + String failureReason = null; for (final Map.Entry<NodeIdentifier, DropRequestDTO> nodeEntry : dropRequestMap.entrySet()) { final DropRequestDTO nodeDropRequest = nodeEntry.getValue(); + if (!nodeDropRequest.isFinished()) { + allFinished = false; + } + if (nodeDropRequest.getFailureReason() != null) { + failureReason = nodeDropRequest.getFailureReason(); + } + currentCount += nodeDropRequest.getCurrentCount(); currentSize += nodeDropRequest.getCurrentSize(); droppedCount += nodeDropRequest.getDroppedCount(); @@ -3006,7 +3015,7 @@ public class WebClusterManager implements HttpClusterManager, ProtocolHandler, C } final DropFlowFileState nodeState = DropFlowFileState.valueOfDescription(nodeDropRequest.getState()); - if (state == null || state.compareTo(nodeState) > 0) { + if (state == null || state.ordinal() > nodeState.ordinal()) { state = nodeState; } } @@ -3019,6 +3028,14 @@ public class WebClusterManager implements HttpClusterManager, ProtocolHandler, C dropRequest.setDroppedSize(droppedSize); dropRequest.setDropped(FormatUtils.formatCount(droppedCount) + " / " + FormatUtils.formatDataSize(droppedSize)); + dropRequest.setFinished(allFinished); + dropRequest.setFailureReason(failureReason); + if (originalCount == 0) { + dropRequest.setPercentCompleted(allFinished ? 100 : 0); + } else { + dropRequest.setPercentCompleted((int) ((double) droppedCount / (double) originalCount * 100D)); + } + if (!nodeWaiting) { dropRequest.setOriginalCount(originalCount); dropRequest.setOriginalSize(originalSize);
