LuciferYang opened a new issue, #13541:
URL: https://github.com/apache/gluten/issues/13541

   ## Problem
   
   In the seven days from 2026-10-27 to 2026-11-02, apache/gluten used about 
292,000 GitHub Actions runner-minutes (job durations summed from the Actions 
API, re-runs included). The ASF policy limits a project's average weekly usage 
to 250,000 minutes, and projects that keep exceeding it lose Actions access 
until they fix their builds.
   
   | Workflow (event) | Runs | Runner-minutes | Share |
   |-|-|-|-|
   | Velox Backend (x86), `pull_request` | 165 | 209,502 | 71.8% |
   | Delta Spark UT (Gluten), `pull_request` | 57 | 36,876 | 12.6% |
   | All other workflows | | 45,590 | 15.6% |
   
   All 165 x86 runs and all 57 Delta runs came from fork PRs.
   
   ## Proposal
   
   Run `velox_backend_x86.yml` for fork PRs in the contributor's fork on push, 
and report the result on the PR, as Spark has done since SPARK-35048. Runs in a 
fork count against the fork owner's account, standard runners are free on 
public repositories, and a public fork gets the same 4-CPU / 16 GB runners as 
apache/gluten.
   
   #13535 implements this as a draft, and its description has the details and 
the pilot runs. In short, the fork run tests the PR squash-merged onto the 
current apache/gluten `main` and restores the native-build ccache that 
apache/gluten saves on `main`. A scheduled workflow in apache/gluten then 
copies the fork run's result into a check on the PR, without 
`pull_request_target`, which the ASF disables from November 2026.
   
   In the pilot, the native build took 4 to 5 minutes with a restored ccache 
and 113 minutes without one. A full run used about 1,200 runner-minutes of the 
fork's own quota.
   
   ## What changes for contributors and reviewers
   
   - Authors have to enable Actions in their fork. Of the 47 forks behind the 
open PRs on 2026-11-04, 39 had Actions runs since 2026-10-01.
   - The check shows up on the PR at the next 15-minute pass of the scheduled 
workflow and links to the run in the fork. GitHub can delay scheduled runs.
   - Reviewers can't rerun a flaky job in someone else's fork. The author has 
to.
   - A free account runs at most 20 jobs at a time, which is also the ASF limit 
for one workflow. An author with several PRs running at once splits those 20 
between them.
   - Open PRs get no x86 run until their branch is rebased onto `main` after 
#13535 and pushed again.
   - The trust model doesn't change: `pull_request` already runs the PR's own 
copy of the workflow files.
   
   ## Follow-ups and open questions
   
   - I don't have a good answer yet for authors who can't enable Actions in 
their fork. One option is a committer-only comment trigger like `/ansi-test`.
   - The Iceberg UT and the clang-tidy step are skipped on fork pushes in 
#13535 and need their own changes.
   - Delta Spark UT can move the same way.
   - A fork with a name other than `gluten`, such as `incubator-gluten`, builds 
under a different workspace path. In a probe it got 0 of 272 ccache hits from 
the upstream stash. #13535 now sets `CCACHE_BASEDIR` in the CI build scripts to 
fix that, which I still have to check in CI.
   - `pr_bot.yml` and `clickhouse_be_trigger.yml` still use 
`pull_request_target`. Moving them to the `workflow_run` pattern on the ASF 
policy page is a separate change.
   - This doesn't replace the ANSI test tags discussed in #13263.
   
   I'd like to hear what you think. cc @philo-he @zhztheplayer
   
   Generated-by: Claude Opus 5.5
   


-- 
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