Skip to content

[7.0.1] Attempt to make main repo mapping inverse more efficient#20625

Merged
Wyverald merged 1 commit intobazelbuild:release-7.0.1from
bazel-io:cp20613-7.0.1
Dec 20, 2023
Merged

[7.0.1] Attempt to make main repo mapping inverse more efficient#20625
Wyverald merged 1 commit intobazelbuild:release-7.0.1from
bazel-io:cp20613-7.0.1

Conversation

@bazel-io
Copy link
Copy Markdown
Member

During bazel query, Label#getDisplayForm(mainRepoMapping) might be called many many times. We can optimize for that case without sacrificing too much memory by computing a reverse mapping for the main repo mapping only.

Fixes #20613.

Closes #20617.

Commit d9169ab

PiperOrigin-RevId: 592607904
Change-Id: Iaaa709a51fe39556f03408080c1fe5e73689b761

During `bazel query`, `Label#getDisplayForm(mainRepoMapping)` might be called many many times. We can optimize for that case without sacrificing too much memory by computing a reverse mapping for the main repo mapping only.

Fixes bazelbuild#20613.

Closes bazelbuild#20617.

PiperOrigin-RevId: 592607904
Change-Id: Iaaa709a51fe39556f03408080c1fe5e73689b761
@bazel-io bazel-io requested a review from a team as a code owner December 20, 2023 19:10
@bazel-io bazel-io added team-ExternalDeps External dependency handling, remote repositiories, WORKSPACE file. awaiting-review PR is awaiting review from an assigned reviewer labels Dec 20, 2023
@Wyverald Wyverald enabled auto-merge (squash) December 20, 2023 19:12
@Wyverald Wyverald merged commit 521bebd into bazelbuild:release-7.0.1 Dec 20, 2023
@github-actions github-actions Bot removed the awaiting-review PR is awaiting review from an assigned reviewer label Dec 20, 2023
iancha1992 pushed a commit that referenced this pull request Jan 18, 2024
Baseline:  d798ebd

Release Notes:

+ Consider MODULE.bazel for workspace detection in bazel.sh (#20594)
+ Auto-create deploy jars for Bazel `java_test` targets if requested (#20602)
+ `java_binary` wrapper should forward `restricted_to` (#20611)
+ Mount user-specified bind mounts before Bazel's own magic. (#20609)
+ Fix bootstrapped Bazel binary (#20612)
+ Attempt to make main repo mapping inverse more efficient (#20625)
+ Cherry-pick all presubmit.yml changes (#20733)
+ Print interactive sandboxed shell command with `--sandbox_debug` (#20734)
+ Fix two issues with --incompatible_sandbox_hermetic_tmp that manifested themselves when the output base was under /tmp (#20718)
+ Let module extensions track calls to `Label()` (#20750)
+ Add support for bind mounts under `/tmp` with hermetic tmp (#20749)
+ Fixes for Bazel's own integration tests fail locally on Linux  (#20821)
+ Fix NPE in BzlmodRepoRuleFunction (#20828)
+ Avoid emitting canonical labels into generated repos (#20840)
+ Let .bzl files record their usages of repo mapping (#20848)
+ Force output checking for incremental run commands without the bytes. (#20881)
+ Retry binding to ipv6 localhost (#20903)
+ Fix linker feature detection being performed on wrong linker (#20901)
+ Fix singlejar resource mapping for external repositories (#20904)

Acknowledgements:

This release contains contributions from many people at Google, as well as bazel.build machine account, David Ostrovsky, Fabian Meumertzheim, hvd, Siddhartha Bagaria, Tianyu Geng, Xdng Yng, Xùdōng Yáng.
copybara-service Bot pushed a commit that referenced this pull request Jan 18, 2024
Baseline:  d798ebd

Release Notes:

+ Consider MODULE.bazel for workspace detection in bazel.sh (#20594)
+ Auto-create deploy jars for Bazel `java_test` targets if requested (#20602)
+ `java_binary` wrapper should forward `restricted_to` (#20611)
+ Mount user-specified bind mounts before Bazel's own magic. (#20609)
+ Fix bootstrapped Bazel binary (#20612)
+ Attempt to make main repo mapping inverse more efficient (#20625)
+ Cherry-pick all presubmit.yml changes (#20733)
+ Print interactive sandboxed shell command with `--sandbox_debug` (#20734)
+ Fix two issues with --incompatible_sandbox_hermetic_tmp that manifested themselves when the output base was under /tmp (#20718)
+ Let module extensions track calls to `Label()` (#20750)
+ Add support for bind mounts under `/tmp` with hermetic tmp (#20749)
+ Fixes for Bazel's own integration tests fail locally on Linux  (#20821)
+ Fix NPE in BzlmodRepoRuleFunction (#20828)
+ Avoid emitting canonical labels into generated repos (#20840)
+ Let .bzl files record their usages of repo mapping (#20848)
+ Force output checking for incremental run commands without the bytes. (#20881)
+ Retry binding to ipv6 localhost (#20903)
+ Fix linker feature detection being performed on wrong linker (#20901)
+ Fix singlejar resource mapping for external repositories (#20904)

Acknowledgements:

This release contains contributions from many people at Google, as well as bazel.build machine account, David Ostrovsky, Fabian Meumertzheim, hvd, Siddhartha Bagaria, Tianyu Geng, Xdng Yng, Xùdōng Yáng.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

team-ExternalDeps External dependency handling, remote repositiories, WORKSPACE file.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants