This is an automated email from the ASF dual-hosted git repository.

markap14 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nifi.git

commit e05d11c0b4fef2935c2ae0c3265853bbe63ab2b0
Author: Mark Payne <[email protected]>
AuthorDate: Fri Dec 13 15:09:15 2019 -0500

    NIFI-6787: Added a comment to the UI tooltip, user guide, and javadocs to 
indicate that round robin may skip a node if that node is not receiving the 
data as fast as other nodes in the cluster, in order to maximum throughput.
---
 nifi-docs/src/main/asciidoc/user-guide.adoc                           | 4 +++-
 .../java/org/apache/nifi/controller/queue/LoadBalanceStrategy.java    | 3 ++-
 .../nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js           | 3 ++-
 3 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/nifi-docs/src/main/asciidoc/user-guide.adoc 
b/nifi-docs/src/main/asciidoc/user-guide.adoc
index 9253418..396cc99 100644
--- a/nifi-docs/src/main/asciidoc/user-guide.adoc
+++ b/nifi-docs/src/main/asciidoc/user-guide.adoc
@@ -1244,7 +1244,9 @@ To distribute the data in a flow across the nodes in the 
cluster, NiFi offers th
 
 - *Do not load balance*: Do not load balance FlowFiles between nodes in the 
cluster. This is the default.
 - *Partition by attribute*: Determines which node to send a given FlowFile to 
based on the value of a user-specified FlowFile Attribute. All FlowFiles that 
have the same value for the Attribute will be sent to the same node in the 
cluster. If the destination node is disconnected from the cluster or if unable 
to communicate, the data does not fail over to another node. The data will 
queue, waiting for the node to be available again. Additionally, if a node 
joins or leaves the cluster nece [...]
-- *Round robin*: FlowFiles will be distributed to nodes in the cluster in a 
round-robin fashion. If a node is disconnected from the cluster or if unable to 
communicate with a node, the data that is queued for that node will be 
automatically redistributed to another node(s).
+- *Round robin*: FlowFiles will be distributed to nodes in the cluster in a 
round-robin fashion. If a node is disconnected from the cluster or if unable to 
communicate with a node, the data that is
+queued for that node will be automatically redistributed to another node(s). 
If a node is not able to receive the data as fast other nodes in the cluster, 
the node may also be skipped for one or
+more iterations in order to maximize throughput of data distribution across 
the cluster.
 - *Single node*: All FlowFiles will be sent to a single node in the cluster.  
Which node they are sent to is not configurable. If the node is disconnected 
from the cluster or if unable to communicate with the node, the data that is 
queued for that node will remain queued until the node is available again.
 
 NOTE: In addition to the UI settings, there are 
<<administration-guide.adoc#cluster_node_properties,Cluster Node Properties>> 
related to load balancing that must also be configured in _nifi.properties_.
diff --git 
a/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/LoadBalanceStrategy.java
 
b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/LoadBalanceStrategy.java
index 3053548..d07f509 100644
--- 
a/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/LoadBalanceStrategy.java
+++ 
b/nifi-framework-api/src/main/java/org/apache/nifi/controller/queue/LoadBalanceStrategy.java
@@ -30,7 +30,8 @@ public enum LoadBalanceStrategy {
     PARTITION_BY_ATTRIBUTE,
 
     /**
-     * FlowFiles will be distributed to nodes in the cluster in a Round-Robin 
fashion.
+     * FlowFiles will be distributed to nodes in the cluster in a Round-Robin 
fashion. However, if a node in the cluster is not able to receive data as fast 
as other nodes,
+     * that node may be skipped in one or more iterations in order to maximize 
throughput of data distribution across the cluster.
      */
     ROUND_ROBIN,
 
diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js
index 77d5847..63c4bf2 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-common.js
@@ -1233,7 +1233,8 @@
             }, {
                 text: 'Round robin',
                 value: 'ROUND_ROBIN',
-                description: 'FlowFiles will be distributed to nodes in the 
cluster in a Round-Robin fashion.'
+                description: 'FlowFiles will be distributed to nodes in the 
cluster in a Round-Robin fashion. However, if a node in the cluster is not able 
to receive data as fast as other nodes,'
+                                + ' that node may be skipped in one or more 
iterations in order to maximize throughput of data distribution across the 
cluster.'
             }, {
                 text: 'Single node',
                 value: 'SINGLE_NODE',

Reply via email to