apache / apache/gluten

[CI] MinIO binary download from dl.min.io returns HTTP 410

Open
#13,011 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Scala
Stars
1.6k
Forks
657
Avg merge
2d 14h
Merged PRs (30d)
80

Description

### Description

Every CI job that reaches `install_minio` fails at that step:

```
Installing MinIO...
curl: (22) The requested URL returned error: 410
##[error]Process completed with exit code 22.
```

`.github/workflows/util/install-spark-deps.sh` downloads the MinIO server and client binaries from `dl.min.io`:

```bash
curl -fsSL -o /usr/local/bin/minio https://dl.min.io/server/minio/release/linux-amd64/minio
curl -fsSL -o /usr/local/bin/mc https://dl.min.io/client/mc/release/linux-amd64/mc
```

MinIO has taken its community binary distribution off `dl.min.io`. Both URLs now return HTTP 410 Gone, as do the `archive/` subpaths and the old `dl.minio.io` host. `-f` makes curl exit non-zero on the 410 and `set -e` fails the step, so `tpc-test-ubuntu` and the celeborn / uniffle / OOM / random-kill jobs that call `setup_minio` all go red regardless of what a PR changed. `velox_backend_x86.yml` is the only workflow that calls these helpers.

This is the same upstream event that broke Paimon CI (apache/paimon#9780), but a different surface. Paimon pulls `minio/minio` as a Docker image through testcontainers and fixed it by qualifying the name to `quay.io/minio/minio`. Gluten runs `minio server` and `mc` as standalone binaries, so the registry rename does not apply here; the binary download endpoint is what is gone.

### Fix

Pull the pinned release assets from GitHub instead. One wrinkle: `minio/minio`'s latest release ships no assets, so the server has to pin to the last release that still carries them.

- server: `RELEASE.2025-09-07T16-13-09Z` (latest with assets)
- client: `RELEASE.2025-08-13T08-35-41Z`

Both were confirmed to download anonymously; the server asset is a valid 110 MB x86-64 ELF binary. `linux-amd64` is unchanged, matching the one x86 workflow that uses these helpers.

Filed alongside the PR that fixes it.

Contributor guide

Open the contributing guide

Research direction

Start with .github/workflows/util/install-spark-deps.sh and trace the install_minio/setup_minio callers in velox_backend_x86.yml. Replace the unavailable MinIO downloads with the specified pinned GitHub release assets, then verify both binaries download successfully and the affected CI jobs pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, shell
Domain
ci-cd, devops
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.