infra: pin the container CBC to 2.10.10 on both architectures - #128
Merged
Conversation
pulp ships CBC 2.10.3 from 2019 for amd64, which is what the container runs today. Debian trixie packages 2.10.12. pulp resolves the solver by path and has no override, so the bundled binaries are linked to the packaged one and a build time solve asserts the swap took effect. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The Debian package is 2.10.12, which solves one captured slow request to a much worse incumbent than 2.10.10 does. arm64 already runs the 2.10.10 that pulp bundles, so amd64 takes the official 2.10.10 release build instead of the package and both architectures end up on the same version. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The tarball is fetched by the builder rather than by a stage of its own and mounted from there, and the build time check is the version the solver reports rather than that plus a solve. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
relates to #76
The container solves with the CBC that pulp bundles, which is 2.10.10 on arm64 but 2.10.3 built in December 2019 on amd64. This puts both architectures on 2.10.10, so the deployed solver no longer depends on which image was pulled.
The amd64 tarball is fetched on every build, including arm64 ones where it goes unused. That costs a download, not image weight.
TODO
On amd64,
013-grid-export-limit-hitreturns 17.531375 where the stored expectation is 17.537263. Both solves report a proved optimum and the same case matches exactly on arm64 at the same solver version, so this looks like a different optimum of equal real value reported through a different clean objective rather than a wrong answer. The expectations were produced against 2.10.3, and the suite keeps running against the bundled binary rather than the container, so nothing fails in CI. Worth confirming before merging.