NIFI-15902: Ensure subject is included in merged clustered response f…#11200
Merged
pvillard31 merged 1 commit intoapache:mainfrom May 4, 2026
Merged
NIFI-15902: Ensure subject is included in merged clustered response f…#11200pvillard31 merged 1 commit intoapache:mainfrom
pvillard31 merged 1 commit intoapache:mainfrom
Conversation
…or connector verification.
pvillard31
approved these changes
May 4, 2026
pvillard31
approved these changes
May 4, 2026
pull Bot
pushed a commit
to NeatNerdPrime/nifi
that referenced
this pull request
May 4, 2026
…or connector verification. (apache#11200)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
…or connector verification.
Summary
NIFI-15902
When a connector configuration step is verified on a clustered NiFi, the
subjectfield on eachConfigVerificationResultDTOis dropped duringcluster aggregation. As a result, clients receive verification results
with a populated step name, outcome, and explanation but a
nullsubject, even though every node produced a subject for the failing
property.
The cause is in
ConfigVerificationResultMerger.computeAggregateResults(),which constructs a brand new aggregate DTO and copies only
verificationStepName,outcome, andexplanationfrom the selectednode result. The
subjectis silently lost.This change copies the
subjectfrom the selected node result onto theaggregate DTO so it is returned to the client unchanged. The "selected"
result is already chosen as the worst-outcome result (FAILED > SKIPPED >
SUCCESSFUL), which means the surfaced subject corresponds to the
verification result the user actually needs to act on.
The same
ConfigVerificationResultMergeris also used byVerifyConfigEndpointMerger(processors, controller services,reporting tasks, parameter providers, flow analysis rules), so any of
those endpoints whose upstream DTOs include a subject will now also
preserve it through cluster aggregation. Today their per-DAO DTO
converters do not set
subject, so there is no behavior change forthose endpoints; only the connector verification path observes a
visible difference.
Behavior
are all preserved (unchanged).
returned (unchanged step name/outcome/explanation handling).
worst-outcome (selected) result is returned, consistent with how
the explanation prefix is already chosen.
Tests
ConfigVerificationResultMergerTestadds three cases covering the newbehavior:
testSingleNodeSubjectPreserved- single-node failed result keepsits subject through the merge.
testMultiNodeAgreeSubjectPreserved- two nodes agreeing on asuccessful result keep the shared subject.
testMultiNodeDisagreeSubjectFromSelectedResult- when one nodesucceeds and another fails, the merged result carries the failing
node's subject, matching the worst-outcome selection that already
governs the merged outcome and explanation.