Skip to content

[8.8.0] Fix remote repo contents cache issues#29088

Closed
fmeum wants to merge 2 commits into
bazelbuild:release-8.8.0from
fmeum:rrcc-8.7.0-22
Closed

[8.8.0] Fix remote repo contents cache issues#29088
fmeum wants to merge 2 commits into
bazelbuild:release-8.8.0from
fmeum:rrcc-8.7.0-22

Conversation

@fmeum

@fmeum fmeum commented Mar 24, 2026

Copy link
Copy Markdown
Collaborator
  • The cache was always written to, even if not enabled. (On 8.x this guard was already folded into the remote repo contents cache port, [8.8.0] Add a remote repo contents cache #29075, so only the second fix below is applied here.)
  • Google RBE doesn't accept Commands without the (deprecated) Platform field set. We set it both on Command and Action, just to be safe.

Fixes #28294 (comment)

Closes #28295.

PiperOrigin-RevId: 856169835
Change-Id: I2479119a173e325a7d39643a36536569f5f831fc
(cherry picked from commit a9946096847e22de98e0e11b1f5dfbb6ec6ecdbb)

@iancha1992 iancha1992 added this to the 8.7.0 release blockers milestone Mar 25, 2026
@iancha1992 iancha1992 added the soft-release-blocker Soft release blockers that are nice to have, but shouldn't block the release if it's the last one. label Apr 24, 2026
@iancha1992 iancha1992 changed the base branch from release-8.7.0 to release-8.8.0 May 7, 2026 17:31
@iancha1992 iancha1992 changed the title [8.7.0] 22/23: Fix remote repo contents cache issues [8.8.0] 22/23: Fix remote repo contents cache issues May 7, 2026
@github-actions

github-actions Bot commented Jun 7, 2026

Copy link
Copy Markdown

Thank you for contributing to the Bazel repository! This pull request has been marked as stale since it has not had any activity in the last 30 days. It will be closed in the next 30 days unless any other activity occurs. If you think this PR is still relevant and should stay open, please post any comment here and the PR will no longer be marked as stale.

@github-actions github-actions Bot added the stale Issues or PRs that are stale (no activity for 30 days) label Jun 7, 2026
@fmeum fmeum changed the title [8.8.0] 22/23: Fix remote repo contents cache issues [8.8.0] Fix remote repo contents cache issues Jun 23, 2026
@github-actions github-actions Bot removed the stale Issues or PRs that are stale (no activity for 30 days) label Jun 24, 2026
@fmeum fmeum marked this pull request as ready for review June 24, 2026 07:54
@fmeum fmeum requested a review from a team as a code owner June 24, 2026 07:54
@github-actions github-actions Bot added team-Configurability platforms, toolchains, cquery, select(), config transitions team-ExternalDeps External dependency handling, remote repositiories, WORKSPACE file. team-Core Skyframe, bazel query, BEP, options parsing, bazelrc team-Remote-Exec Issues and PRs for the Execution (Remote) team area-Bzlmod Bzlmod-specific PRs, issues, and feature requests awaiting-review PR is awaiting review from an assigned reviewer labels Jun 24, 2026
@iancha1992 iancha1992 enabled auto-merge June 24, 2026 18:49
fmeum and others added 2 commits June 25, 2026 09:40
Fixes bazelbuild#27517 by checking Skyframe deps in batches that stop right before any dep that may cause a cycle if checked while previous deps are out-of-date.

This is accompanied by a restructuring of `RepoRecordedInput` that consolidates all Skyframe logic associated with the computation of the corresponding value exclusively within that class. This will also be helpful in adding support for dynamic inputs to the remote repo contents cache in future work.

The upstream commit additionally moved the entirety of `RepositoryFetchFunction` to Skyframe workers so that checking the up-to-dateness of local repo contents cache entries isn't quadratic. That worker refactor is omitted in this 8.x backport, which keeps the existing split `RepositoryDelegatorFunction`/`StarlarkRepositoryFunction` architecture and restart-based evaluation; the cycle fix and the `RepoRecordedInput` restructuring are applied on that model. The batched up-to-dateness check is restart-safe (`isAnyValueOutdated` short-circuits while its batch's values are still missing).

Closes bazelbuild#28206.

Co-authored-by: Xudong Yang <wyverald@gmail.com>
PiperOrigin-RevId: 855252657
Change-Id: Ica18760ae79da5155fc0f3d8cd4f24c52a034c86
(cherry picked from commit 72a25a9)
* The cache was always written to, even if not enabled. (On 8.x this guard was already folded into the remote repo contents cache port, bazelbuild#29075, so only the second fix below is applied here.)
* Google RBE doesn't accept `Command`s without the (deprecated) `Platform` field set. We set it both on `Command` and `Action`, just to be safe.

Fixes bazelbuild#28294 (comment)

Closes bazelbuild#28295.

PiperOrigin-RevId: 856169835
Change-Id: I2479119a173e325a7d39643a36536569f5f831fc
(cherry picked from commit a9946096847e22de98e0e11b1f5dfbb6ec6ecdbb)
auto-merge was automatically disabled June 25, 2026 07:47

Head branch was pushed to by a user without write access

@iancha1992 iancha1992 enabled auto-merge June 25, 2026 18:27
@fmeum

fmeum commented Jun 26, 2026

Copy link
Copy Markdown
Collaborator Author

Merged in 023a3f6

@fmeum fmeum closed this Jun 26, 2026
auto-merge was automatically disabled June 26, 2026 11:09

Pull request was closed

@fmeum fmeum deleted the rrcc-8.7.0-22 branch June 26, 2026 11:10
@github-actions github-actions Bot removed the awaiting-review PR is awaiting review from an assigned reviewer label Jun 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-Bzlmod Bzlmod-specific PRs, issues, and feature requests soft-release-blocker Soft release blockers that are nice to have, but shouldn't block the release if it's the last one. team-Configurability platforms, toolchains, cquery, select(), config transitions team-Core Skyframe, bazel query, BEP, options parsing, bazelrc team-ExternalDeps External dependency handling, remote repositiories, WORKSPACE file. team-Remote-Exec Issues and PRs for the Execution (Remote) team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants