Bundle deploy of an AI/BI dashboard breaks viewers' private bookmarks (UI save + publish does not)
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 45/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- go
- Bereich
- backend-api-design, cli
Rechercherichtung
Start by tracing how databricks bundle deploy updates Lakeview dashboard drafts, then compare that path with databricks lakeview publish and the UI save behavior described here. The payload does not name source files or tests, so locate the dashboard update implementation and its coverage first. Done means an unchanged-content deploy preserves viewers’ private bookmarks, with a regression test covering the reported reproduction.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Describe the issue
Deploying an AI/BI dashboard with databricks bundle deploy breaks every viewer's private bookmarks on the published dashboard, even when the deployed content is identical to what's already there. After the deploy, each private bookmark that had saved filter values shows a warning icon: "N widgets are no longer available" (N = the dashboard's filter widgets, which keep the same widget names in the file).
A save + publish from the dashboard editor in the UI does not break them, and neither does calling only the publish step (databricks lakeview publish) on an unchanged draft. So it looks like updating the draft through the API (which the bundle deploy does before publishing) regenerates whatever internal widget identity private bookmarks refer to, while a UI save keeps it. The exported serialized_dashboard carries no extra identifiers we could preserve in the file: diffing the UI-saved draft against our file shows only the edit that was made.
This may sit in the Lakeview update API rather than the CLI, but bundles are where it bites: every CI deploy that touches a dashboard breaks all its viewers' private bookmarks.
Configuration
resources:
dashboards:
my_dashboard:
display_name: My Dashboard
file_path: ./my_dashboard.lvdash.json
warehouse_id: ${var.warehouse_id}
dataset_catalog: ${var.catalog}
embed_credentials: false
Dashboard with ~11 filter widgets (single- and multi-select) on a global filters page.
Steps to reproduce the behavior
databricks bundle deploythe dashboard.- Open the published dashboard, change a filter value, and save a private bookmark.
- Run
databricks lakeview publish <id> --warehouse-id <wh>(draft unchanged). Bookmark still works. - Re-save the
.lvdash.jsonwith only whitespace changes (identical JSON content) and rundatabricks bundle deploy. The draft is updated and republished. - Reload the published dashboard: the private bookmark shows the warning icon, "N widgets are no longer available".
For comparison: edit a widget title in the UI draft and publish from the UI. A private bookmark created beforehand keeps working.
Expected Behavior
Private bookmarks keep working after a bundle deploy when the filter widgets (same names) still exist, the same as after a UI save and publish.
Actual Behavior
All private bookmarks with saved filter values break after any bundle deploy that updates the dashboard, including a deploy with identical content.
OS and CLI version
Databricks CLI v0.298.0, macOS, Terraform deployment engine (default).
Is this a regression?
Unknown. Private bookmarks are new (October 2026 release notes).
Debug Logs
Can provide redacted logs if useful.
- Vorherrschende Sprache
- Go
- Sterne
- 427
- Forks
- 267
- Ø Merge
- 2 T. 1 Std.
- Gemergte PRs (30 T.)
- 233
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Kein Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus databricks/cli
-
Apps commands only accept relative path to app.ymlEvtl. vergeben @yuri-rod hat das vor 38 Tagen übernommen. OffenCLI
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
databricks/cli#6910 ·
Maintainer antworten meist innerhalb von 1 Tag
-
DABs
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
databricks/cli#6670 · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
Bump vulnerable dependencies workflow is failingEvtl. vergeben @shreyas-goenka hat das heute übernommen. Offenbump-vuln-deps-failure
databricks/cli#7531 · 1 Kommentar · 7 zugewiesene Personen ·
Maintainer antworten meist innerhalb von 1 Tag
-
bundle run on an app fails with "not in RUNNING state" when the app's compute is UPDATINGEvtl. vergeben @andrewnester hat das vor 1 Tag übernommen. OffenBug DABs
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 76/100
databricks/cli#7451 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 66/100
databricks/cli#7387 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
coder/openstorage#807 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
coder/coder-logstream-kube#255 · 1 Kommentar ·
-
kind/features
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 73/100
TencentBlueKing/bk-nodemgr#3991 ·
Maintainer antworten meist innerhalb von 1 Tag