Repository navigation
ci: stop running RAT in the parallel packaging-check build - #20527
Merged
FrankChen021 merged 1 commit intoOct 9, 2026
Merged
Conversation
apache-rat-plugin 0.17+ keeps per-run state in shared static objects, so running rat:check across modules under -T1C intermittently drops configured excludes (e.g. **/target/**) or throws NPEs (RAT-553, fixed upstream by RAT-573, not yet released). packaging-check ran RAT this way via -Prat. static-checks-maven.sh already runs a repo-wide, single-threaded apache-rat:check in the same workflow, so drop -Prat from packaging-check and document that the single-threaded pass is the only RAT check.
FrankChen021
self-requested a review
October 9, 2026 02:05
FrankChen021
approved these changes
Oct 9, 2026
This was referenced Oct 9, 2026
CI infra: apache-rat-plugin 0.18 check fails intermittently in parallel packaging-check build
#20465
Closed
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.
Fixes #20465.
Description
The
packaging-checkjob in Static Checks CI fails intermittently inapache-rat-plugin:0.18:check. There have been 3 failures on master since the bump from 0.15 to 0.18 in #20000. Two are NPEs and one is a spuriousUNAPPROVEDcount. In the 2026-09-30 run,druid-cassandra-storagereported 36 unapproved files. That module has only 8 tracked files, all of which have license headers, and the failing commit didn't touch it, so RAT was scanning generated files that**/target/**normally excludes.Stopped running RAT in the parallel
packaging-checkbuildSince 0.17,
apache-rat-pluginkeeps per-run state in shared static objects. Whenrat:checkruns for several modules at once in one JVM, those runs can interfere with each other. This can drop a module's configured<excludes>or throw an NPE while parsing.gitignorefiles. Upstream tracks this as RAT-553, and the fix is RAT-573, which is targeted at the unreleased 1.0.0.packaging-check.shhit this race because it raninstall -Prat ... -T1C.static-checks-maven.shalready runs a repo-wideapache-rat:check -Pratwithout-Tin the same workflow (added in #20297), and it covers every module, includingbenchmarksanddistribution. The RAT run inpackaging-checktherefore added no coverage. This PR:-Pratfrom both Maven invocations in.github/scripts/packaging-check.sh, and updates its comment..github/scripts/static-checks-maven.shto say it is the only RAT pass and must stay single-threaded.Alternative considered: pin
apache-rat-pluginback to0.16.1until a release that includes RAT-573 ships. That would also need a dependabot ignore rule to stop it from being bumped again, and it would still run RAT twice. Removing the duplicate run is simpler. Once RAT-573 is released,-Pratcould be added back topackaging-checkif wanted.Release note
None. This is a CI-only change.
Key changed/added files in this PR
.github/scripts/packaging-check.sh.github/scripts/static-checks-maven.shThis PR has: