sezruby opened a new pull request, #12804: URL: https://github.com/apache/gluten/pull/12804
## What changes are proposed in this pull request? The Gluten CPP cmake configure step pulls in build dependencies via CMake `FetchContent` (gtest, glog, gflags) and a roaring `git clone`, all fetched from GitHub. These downloads intermittently fail with transient HTTP errors such as `429 (Too Many Requests)` or `503`, and a single such failure aborts the entire native-library build. For example, a recent CI run failed in the native build fetching gtest: ``` https://codeload.github.com/google/googletest/tar.gz/refs/tags/v1.13.0 ... HTTP/2 429 The requested URL returned error: 429 ``` This adds a small `run_with_retry` helper in `dev/builddeps-veloxbe.sh` — the one script every native-build CI job funnels through — and uses it to wrap the `cmake -G Ninja` configure step (3 attempts, 15s backoff). Re-running configure is idempotent: CMake re-downloads any missing archive and verifies its `URL_HASH` checksum, so a partial or failed download is simply re-fetched. The `ninja` compile is intentionally left un-retried so genuine build errors still fail fast. ## How was this patch tested? - `bash -n dev/builddeps-veloxbe.sh` (syntax check). - Unit-tested `run_with_retry` under `set -eu`: (1) a command that succeeds on the first try returns 0; (2) a command that fails twice then succeeds is retried and ultimately succeeds; (3) a command that always fails exhausts all attempts and propagates its real exit code (does not mask the failure). - Existing CI exercises the wrapped configure step on every native build. ## Was this patch authored or co-authored using generative AI tooling? Generated-by: Claude Code (Claude Opus 4.8) -- 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]
