Pierre Villard created NIFI-16351:
-------------------------------------
Summary: Prevent Flow Registry synchronization failures during
startup validation
Key: NIFI-16351
URL: https://issues.apache.org/jira/browse/NIFI-16351
Project: Apache NiFi
Issue Type: Improvement
Reporter: Pierre Villard
Assignee: Pierre Villard
When NiFi restores a version-controlled process group during startup, setting
its version-control information immediately submits a Flow Registry
synchronization task.
Flow Registry Clients initially have a validation status of {*}VALIDATING{*}.
During persisted-flow restoration, asynchronous validation is not scheduled
until the FlowController is initialized. The synchronization task waits up to
10 seconds for validation and then records a *SYNC_FAILURE* if the client
remains {*}VALIDATING{*}.
For flows that take more than 10 seconds to restore, this produces a
deterministic startup-ordering problem:
# Flow Registry Clients are restored and remain VALIDATING.
# Version-control information is restored for process groups.
# One synchronization task is submitted for each version-controlled process
group.
# Each task waits 10 seconds for validation that cannot yet run.
# The process groups enter SYNC_FAILURE with a misleading message indicating
that the flow version could not be retrieved.
# Initial component validation runs after flow restoration completes.
# Recovery depends on a later periodic registry synchronization.
Multiple process groups can share one Flow Registry Client, causing the same
condition to affect many process groups during a single startup.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)