From 80b3cde95c319cc5e62e561d9aa2fce5c3a16d52 Mon Sep 17 00:00:00 2001 From: Eric Secules Date: Sat, 14 Sep 2024 13:03:25 -0700 Subject: [PATCH] NIFI-7583 Document that Prioritizers do not fully sort a queue when swapping (#9263) Signed-off-by: David Handermann --- nifi-docs/src/main/asciidoc/administration-guide.adoc | 3 +++ nifi-docs/src/main/asciidoc/user-guide.adoc | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/nifi-docs/src/main/asciidoc/administration-guide.adoc b/nifi-docs/src/main/asciidoc/administration-guide.adoc index 7236464d75..edc43faa1e 100644 --- a/nifi-docs/src/main/asciidoc/administration-guide.adoc +++ b/nifi-docs/src/main/asciidoc/administration-guide.adoc @@ -3112,6 +3112,9 @@ available again. These properties govern how that process occurs. |`nifi.swap.manager.implementation`| The Swap Manager implementation. The default value is `org.apache.nifi.controller.FileSystemSwapManager`. |`nifi.queue.swap.threshold`|The queue threshold at which NiFi starts to swap FlowFile information to disk. The default value is `20000`. |==== +NOTE: When a queue begins swapping to disk, NiFi does not guarantee that all the FlowFiles in the queue are sorted in the +order specified by the <> configured on the queue. New FlowFiles arriving at the queue are written to +the swap file without considering prioritizers. They are prioritized when the swap file is read back into memory. === Content Repository diff --git a/nifi-docs/src/main/asciidoc/user-guide.adoc b/nifi-docs/src/main/asciidoc/user-guide.adoc index 07de4a10fb..a2e5fdf872 100644 --- a/nifi-docs/src/main/asciidoc/user-guide.adoc +++ b/nifi-docs/src/main/asciidoc/user-guide.adoc @@ -1444,6 +1444,10 @@ processing order is not further specified but an implementation detail that migh NOTE: With a <> configured, the connection has a queue per node in addition to the local queue. The prioritizer will sort the data in each queue independently. +NOTE: When a connection has more FlowFiles than the `nifi.queue.swap.threshold`, new FlowFiles arriving at that connection +are not prioritized against the active queue, instead they are sent directly to swap. They will be prioritized when they +get brought back into memory. + ==== Changing Configuration and Context Menu Options After a connection has been drawn between two components, the connection's configuration may be changed, and the connection may be moved to a new destination; however, the processors on either side of the connection must be stopped before a configuration or destination change may be made.