Repository navigation
fix: retry pecl installs with backoff - #23
Merged
Merged
Conversation
pecl.php.net answers package downloads with 500/504s, or claims a package has no releases, whenever it is under load. With a PHP security release out and everyone rebuilding at once, that failed whole build matrices on the first error: #20's post-merge builds, and the first attempt of #22's. bin/pecl-install runs `pecl install` up to six times, waiting 10s and doubling each time (about five minutes in all), and clears pear's download cache between attempts. Every `pecl install` in the 8.2-8.5 and FPM images, dev variants included, now goes through it. The dev images copy the script themselves rather than rely on the base image already carrying it.
This was referenced Oct 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
pecl.php.net returns 500/504s (or "no releases available") under load, which has failed whole build matrices on the first error twice today: #20's post-merge builds and the first attempt of #22's.
bin/pecl-installwrapspecl installwith up to 6 attempts, backing off 10s → 160s (about 5 minutes in all), and clears pear's download cache between attempts.PECL_INSTALL_ATTEMPTS/PECL_INSTALL_DELAYtune it.pecl installin the 8.2–8.5 prefork and FPM images, dev variants included, now uses it. Dev images copy the script themselves rather than rely on their base image having it.Checked in
php:8.5-cli: a bogus package retries and fails cleanly after the last attempt, andexcimerinstalls normally. All 18 Dockerfiles passdocker buildx build --check.Merging rebuilds both the prefork and FPM images (it touches
8/**andfpm/**).