Repository: nifi Updated Branches: refs/heads/0.x 72049d80b -> 797c5ec07
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/797c5ec0 Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/797c5ec0 Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/797c5ec0 Branch: refs/heads/0.x Commit: 797c5ec077ce6b772112dc18b017516796102148 Parents: 72049d8 Author: Mark Payne <[email protected]> Authored: Fri Apr 29 16:07:37 2016 -0400 Committer: Matt Gilman <[email protected]> Committed: Mon May 2 08:48:28 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/797c5ec0/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 c0f4c63..7bf8de3 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 @@ -3041,9 +3041,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(); @@ -3057,7 +3066,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; } } @@ -3070,6 +3079,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);
