Repository navigation
Conversation
FilterToSelected only built reverse edges when a selected resource was a delete. A delete pulled in through a forward DependsOn edge of a selected resource (e.g. `--select jobs.consumer` where consumer still references a removed jobs.producer) was therefore never checked for live dependents and was deleted, while `--select jobs.consumer,jobs.producer` correctly errored. Build the reverse edges lazily on the first delete visited by the BFS so every delete gets the same live-dependent check. When the offending delete was not itself selected, say so in the error, since the user never named it. Co-authored-by: Isaac <no-reply@databricks.com>
pietern
force-pushed
the
pietern/f02-7023-select-delete-dependents
branch
from
November 4, 2026 10:09
7c53f97 to
290054b
Compare
Contributor
|
Commit: Regression test reportSelected 1 changed tests (limit=20, 0 not selected) 2 tests: regression=2 unreleased=0 coverage=0 failing=0
TestAccept/bundle/select/deletion_dependents/DMS=: branch ✅ | main (e1b8c92) ❌ | latest (v1.24.0) ❌main (e1b8c92): latest (v1.24.0): same output as main (e1b8c92) TestAccept/bundle/select/deletion_dependents/DMS=true: branch ✅ | main (e1b8c92) ❌ | latest (v1.24.0) ❌main (e1b8c92): latest (v1.24.0): same output as main (e1b8c92) |
Collaborator
Integration test reportCommit: 04bce23
Top 3 slowest tests (at least 2 minutes):
|
The "(not selected, but required by the selection)" suffix was also added to deletes pulled in through the cascade (reverse) edge of a selected delete. Those keep the plain error message again. The suffix is now decided after the BFS, since a delete can be reached through both edge directions and the forward route may be found after it was visited. Also reword the changelog entry, which no longer reports the exact same error as selecting the deleted resource directly. Co-authored-by: Isaac <no-reply@databricks.com>
This branch has not been deployed
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.
Changes
bundle deploy --select jobs.consumercould deletejobs.producer(removed from the config) whileconsumerstill references it, because the live-dependent check only ran for deletes the user selected. It now runs for every delete in the selection. A delete pulled in as a dependency is reported ascannot delete jobs.producer (not selected, but required by the selection): jobs.consumer still references it.Why
Gap in the
--selectdeletion support added in #7023.Tests
acceptance/bundle/select/deletion_dependentscoversbundle planandbundle deploy.This pull request and its description were written by Isaac.