FrankChen021 opened a new issue, #20465:
URL: https://github.com/apache/druid/issues/20465

   _This issue was generated automatically by Claude Code (Anthropic's AI 
coding agent) running a scheduled CI-triage routine on behalf of @FrankChen021. 
Analysis and suggested fixes are AI-produced; please verify before acting on 
them._
   
   **Status:** Open: no fix PR
   **Subject:** `apache-rat-plugin:0.18:check` during 
`.github/scripts/packaging-check.sh` (Static Checks CI, `packaging-check (25) / 
packaging-check-jdk25`)
   **Failures:** 3 · **First seen:** 2026-09-06 · **Last seen:** 2026-09-30
   
   ### Root cause
   
   Since #20000 bumped `apache-rat-plugin` from 0.15 to 0.18, the RAT check in 
`packaging-check.sh` (`mvn clean install -Prat ... -T1C`) fails on a random 
module in roughly one master run a week. The failures differ each time: an NPE 
inside RAT's exclusion builder (`LevelBuilder.asMatcherSet()` on 
`druid-consul-extensions`), an NPE on `File.getParentFile()` 
(`druid-deltalake-extensions`), and on 2026-09-30 the `**/target/**` exclude 
being ignored, so 36 generated files under 
`extensions-contrib/cassandra-storage/target/` were counted as UNAPPROVED. This 
points to RAT 0.18's exclusion/config state not being safe when several modules 
run `rat:check` concurrently in Maven's parallel build. The failing commits 
touched only website deps, a dependency bump, and embedded tests, and 
neighbouring master runs passed this job.
   
   ### Suggested fix
   
   Run the RAT check once, single-threaded, instead of per module inside the 
`-T1C` build (for example drop `-Prat` from the parallel `install` and add a 
separate `mvn -B -Prat apache-rat:check` step without `-T`), or pin the plugin 
back to 0.16 until upstream fixes it. Moving the deprecated `<exclude>` entries 
to `<inputExclude>` is worth doing at the same time.
   
   ### Occurrences
   
   Failed push-triggered master jobs only. The daily triage routine adds one 
row per new failed job.
   
   | Date | Commit | Job | Failure log | Detail | Reported in |
   |---|---|---|---|---|---|
   | 2026-09-06 | df720affe3 (#20261) | `packaging-check (25) / 
packaging-check-jdk25` | [job 
101409110979](https://github.com/apache/druid/actions/runs/34004486842/job/101409110979)
 | `rat:check` NPE (`File.getParentFile()`, `file` is null) on 
`druid-deltalake-extensions` | |
   | 2026-09-10 | 621cff3622 (#20303) | `packaging-check (25) / 
packaging-check-jdk25` | [job 
102711957899](https://github.com/apache/druid/actions/runs/34426235774/job/102711957899)
 | `rat:check` NPE in `LevelBuilder.asMatcherSet()` on 
`druid-consul-extensions` | |
   | 2026-09-30 | afa5b4e744 (#20320) | `packaging-check (25) / 
packaging-check-jdk25` | [job 
109781722092](https://github.com/apache/druid/actions/runs/36682779402/job/109781722092)
 | UNAPPROVED count 36 on `druid-cassandra-storage`: all files under `target/`, 
despite the `**/target/**` exclude | |
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to