comphead commented on PR #5782: URL: https://github.com/apache/datafusion-comet/pull/5782#issuecomment-5604209594
Thanks @sunchao @andygrove. Both items are addressed in 5db3fc7. **Artifact naming.** Replied inline on the [P2 thread](https://github.com/apache/datafusion-comet/pull/5782#discussion_r3964475838). Short version: the two reusable workflows `ci.yml` calls repeatedly now version-qualify their native-lib artifacts (`native-lib-spark-<full>-jdk<N>`, `native-lib-iceberg-<iceberg-full>-spark-<spark-full>-jdk<N>`), consumers updated to match. `native-lib-linux` and `native-lib-macos` stay as they are, since `pr_build_linux.yml` and `pr_build_macos.yml` are each called once. That also clears the pre-existing ambiguity @andygrove noted, where a `download-artifact@v8` step resolved `native-lib-linux` to whichever of three records had the highest ID. **`dev/ci/compute-changes.py`.** Added to the filters: - `.github/actions/upload-artifact-retry/**` to `build_linux`, `build_macos`, all four `spark_*` and all four `iceberg_*`. It was in no filter at all, so an edit touching only `action.yaml` computed every output false. - `.mvn/**` to the `spark_*` and `iceberg_*` filters. `setup-spark-builder` runs `./mvnw install` for the Spark SQL jobs and the three Iceberg jobs call `./mvnw install` directly, so both consume the repository config. - `mvnw` alongside it in those same eight filters. Same defect, same one-line fix: the wrapper script itself was only registered under `build_linux` / `build_macos`. Say the word if you would rather keep this PR to exactly the two paths you named and I will drop it. I deliberately left `benchmark` and `docs` alone. `benchmark` is the complement of the bench-path exclusions in `build_linux`, so widening it to `.mvn/**` would make every Maven config change run the benchmark check, and `docs.yaml` runs no Maven. **Regression check.** Picking up @sunchao's suggestion, `dev/ci/check-ci-config.py` is new and runs from `preflight`. It holds two things: 1. A routing table asserting the exact set of outputs `compute-changes.py` must report true for the shared build inputs (`.mvn/maven.config`, `.mvn/wrapper/maven-wrapper.properties`, `mvnw`, the retry action), plus two spot checks that the additions did not widen the `docs` and `benchmark` routes. 2. The artifact-name invariant described in the inline reply. Both halves were verified by fault injection against this working tree: deleting the new filter entries reports 32 routing failures, and reverting the producer rename reports the shared name and the orphaned consumer. `.github/workflows/README.md` gains a section explaining why the names are version-qualified, since the failure mode is silent. `actionlint`, `apache-rat:check`, `prettier --check`, `check-suites.py` and `check-benchmark-runner.py` all pass locally on the new head. As before, nothing in a green run exercises the retry path itself. -- 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]
