LuciferYang opened a new pull request, #55785: URL: https://github.com/apache/spark/pull/55785
### What changes were proposed in this pull request? Three small changes in `dev/infra/Dockerfile` to make the scheduled `Base image build` job on `branch-3.5` green again: 1. Add `https://mirrors.edge.kernel.org/ubuntu` as an additional APT source (`focal`, `focal-updates`, `focal-security`). This mirrors the pattern the `master` branch already uses and provides a stable fallback when `archive.ubuntu.com` / `security.ubuntu.com` rotate point-release packages out of the canonical archive. 2. Merge `apt-get update` into the `SPARK-39959` install step so its APT index is aligned with the archive at install time, instead of relying on an index cached many Docker layers earlier. 3. Bump `FULL_REFRESH_DATE` from `20221118` to `20260510` so the GH Actions base-image cache is invalidated and this fix actually takes effect on the next run. The base image itself (`ubuntu:focal-20221019`) is unchanged — `branch-3.5` is in maintenance and not a good place to upgrade to `jammy`. ### Why are the changes needed? The scheduled `Build (branch-3.5, Scala 2.13, Hadoop 3, JDK 8)` workflow on 2026-05-09 failed during `Base image build` with multiple `404 Not Found` errors while installing `-dev` packages (`libtiff5-dev`, `libharfbuzz-dev`, `libglib2.0-dev`, `libfreetype6-dev`, `libblkid-dev`, `libmount-dev`, ...). See: https://github.com/apache/spark/actions/runs/25599925191/job/75152057946 Root cause: Ubuntu 20.04 (focal) entered ESM in April 2025. Security point releases rotate out of `archive.ubuntu.com` / `security.ubuntu.com` faster than before. When the Dockerfile's cached APT index (fetched many layers earlier) references a point-release version that has since been rotated, `apt-get install` hits 404. The fix avoids the race by (a) adding a reliably-synced additional mirror and (b) refreshing the APT index right before the failing install step. ### Does this PR introduce _any_ user-facing change? No. Infra-only change to the CI base image on `branch-3.5`. ### How was this patch tested? The base image is only built by the scheduled GH Actions job; there is no local unit test that exercises the Dockerfile. Validation plan: - The `Base image build` job on the PR's own CI run rebuilds `dev/infra/Dockerfile`; passing green there is the primary signal. - Inspected `master`'s `dev/infra/Dockerfile`; the kernel.org mirror is already used there with no regressions. -- 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]
