NIFI-15918 Stabilize flaky system tests around processor lifecycle#11223
NIFI-15918 Stabilize flaky system tests around processor lifecycle#11223markap14 wants to merge 1 commit intoapache:mainfrom
Conversation
exceptionfactory
left a comment
There was a problem hiding this comment.
Thanks for working on improving test stability @markap14.
On initial review, it seems like no changes to the KubernetesConfigMapStateProvider should be included, because it is not used for any system tests. Was that resulting in unit test failures somewhere?
|
[claude-opus-4.7] Thanks for the review @exceptionfactory. The Kubernetes change addresses a unit-test flake, not a system test. ``` The fix is just a null check in Happy to split it out into a separate PR if you'd prefer the lifecycle PR stays narrowly scoped — let me know. |
Thanks for the background reference, keeping it in this PR sounds good. |
- Defensive copy in LifecycleState.getFutures() to prevent ConcurrentModificationException. - Ensure StandardProcessorNode.stop() decrements active threads and completes the stop action even if the stop task throws. - Promote silent processor start abort paths to INFO logs to aid diagnosis. - Null-safe shutdown in KubernetesConfigMapStateProvider when initialization was skipped. - SpawnedStandaloneNiFiInstanceFactory: retry NiFi startup until the Management Server is reachable (handles HttpServer port reuse race), but only when start() is asked to wait for completion. start(false) now spawns the process and returns immediately. - NiFiClientUtil.runProcessorOnce waits for validation completion and fails fast on INVALID; system tests updated to use it where appropriate. - ContentClaimTruncationIT: keep one small FlowFile queued so its resource claim is pinned during replay, preventing archive-cleanup-induced truncation flakes.
Framework:
System tests:
Workspace rules covering single-element-array lambdas and the system-test troubleshooting-logs artifact.
Summary
NIFI-00000
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking
Pull Request Tracking
NIFI-00000NIFI-00000VerifiedstatusPull Request Formatting
mainbranchVerification
Please indicate the verification steps performed prior to pull request creation.
Build
./mvnw clean install -P contrib-checkLicensing
LICENSEandNOTICEfilesDocumentation