Skip to content

acc: drop backend_default plan entries in UC comment tests - #6392

Open
janniklasrose wants to merge 2 commits into
mainfrom
janniklasrose/uc-backend-defaults-in-tests
Open

acc: drop backend_default plan entries in UC comment tests#6392
janniklasrose wants to merge 2 commits into
mainfrom
janniklasrose/uc-backend-defaults-in-tests

Conversation

@janniklasrose

@janniklasrose janniklasrose commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

What

Teach normalize_uc_payload.py to drop any reason:backend_default change entry
(is_backend_default), generalizing the managed-defaults handling to the shape jq
leaves once it strips the enclosing changes key, and pipe both tests through it so
all clouds collapse to the real change. Local output is unchanged: the testserver
only injects managed props for the fixed catalog_managed_defaults name, not the
unique names these cloud tests use.

Why

catalogs/comment_out_of_band and schemas/comment_out_of_band dump the plan
change map via bundle plan --output json | jq '.plan[].changes'. On GCP the
backend populates unity.catalog.managed.iceberg.defaults.delta.feature.catalogManaged
on the fresh catalog/schema, which #5877's wildcard classifies as a backend
default; it surfaces as an extra reason:backend_default skip in the plan. AWS and
Azure do not populate it, so the committed golden diverged and the nightly failed
on GCP only.

Tests

Ran against GCP cloud and it passed. Failed without the patch to normalize_uc_payload.py.

Co-authored-by: Isaac no-reply@databricks.com

catalogs/comment_out_of_band and schemas/comment_out_of_band dump the plan
change map via `bundle plan --output json | jq '.plan[].changes'`. On GCP the
backend populates unity.catalog.managed.iceberg.defaults.delta.feature.catalogManaged
on the fresh catalog/schema, which #5877's wildcard classifies as a backend
default; it surfaces as an extra reason:backend_default skip in the plan. AWS and
Azure do not populate it, so the committed golden diverged and the nightly failed
on GCP only.

Teach normalize_uc_payload.py to drop any reason:backend_default change entry
(is_backend_default), generalizing the managed-defaults handling to the shape jq
leaves once it strips the enclosing changes key, and pipe both tests through it so
all clouds collapse to the real change. Local output is unchanged: the testserver
only injects managed props for the fixed catalog_managed_defaults name, not the
unique names these cloud tests use.

Co-authored-by: Isaac <no-reply@databricks.com>
@eng-dev-ecosystem-bot

eng-dev-ecosystem-bot commented Aug 27, 2026

Copy link
Copy Markdown
Collaborator

Integration test report

Commit: 1793972

Run: 33069328629

Env 💚​RECOVERED 🙈​SKIP ✅​pass 🙈​skip Time
💚​ aws linux 1 4 278 1189 4:16
💚​ aws windows 1 4 280 1187 4:22
💚​ azure linux 1 4 277 1189 4:20
💚​ azure windows 1 4 279 1187 3:45
💚​ gcp linux 1 4 278 1189 4:46
💚​ gcp windows 1 4 280 1187 4:49
Test Name aws linux aws windows azure linux azure windows gcp linux gcp windows
💚​ TestAccept 💚​R 💚​R 💚​R 💚​R 💚​R 💚​R
🙈​ TestAccept/bundle/invariant/no_drift 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_endpoints/drift/recreated_same_name 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/bundle/resources/vector_search_indexes/recreate/embedding_dimension 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
🙈​ TestAccept/ssh/connection 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S 🙈​S
Top 3 slowest tests (at least 2 minutes):
duration env testname
4:15 gcp windows TestAccept
3:59 aws windows TestAccept
3:14 azure windows TestAccept

The first cut dropped every reason:backend_default change entry, which also
stripped the deterministic storage_location backend default that volumes tests
(volumes/uppercase-name, grants/volumes) show in their goldens, breaking local
direct-engine acceptance.

Only the managed-property change is cloud-divergent. Reuse is_managed_change and
apply it at every level instead of only under a `changes` key, so it also fires on
the top-level entry that jq '.plan[].changes' leaves behind. Plain backend defaults
like storage_location are kept.

Co-authored-by: Isaac <no-reply@databricks.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants