Add Reconcile RCA dashboard#2496
Conversation
A new Lakeview dashboard (rca_metrics) for root-cause analysis of reconcile runs. Replaces the legacy reconciliation_metrics dashboard. Two sections: - Recon Jobs: Jobs Summary + Run Details tables - Table Health: KPI counters, Latest Run per Table (with failing columns joined from column_metrics), Runs Over Time and Failed Rows Over Time grouped bars, Failures by Table + Successes by Table pies
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #2496 +/- ##
==========================================
- Coverage 69.43% 69.32% -0.12%
==========================================
Files 106 106
Lines 9576 9623 +47
Branches 1056 1060 +4
==========================================
+ Hits 6649 6671 +22
- Misses 2729 2752 +23
- Partials 198 200 +2 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
✅ 177/177 passed, 8 flaky, 2 skipped, 2h16m57s total Flaky tests:
Running from acceptance #5014 |
…d-redesign' into feature/reconcile-rca-dashboard # Conflicts: # src/databricks/labs/lakebridge/resources/reconcile/dashboards/reconciliation_metrics/07_0_schema_details_table.sql # src/databricks/labs/lakebridge/resources/reconcile/dashboards/reconciliation_metrics/11_0_recon_details_pivot.sql # src/databricks/labs/lakebridge/resources/reconcile/dashboards/reconciliation_metrics/dashboard.yml
Replaces the YAML + lsql authoring path for the rca_metrics dashboard with a single .lvdash.json file as source of truth. Manual UI edits (conditional formatting, layouts) now survive deploys — lsql's typed-model round-trip was silently stripping unknown fields like style.rules. DashboardDeployment.deploy() now handles two entries in the dashboards/ folder: - directory + dashboard.yml (existing lsql path, used by aggregate_reconciliation_metrics) - top-level *.lvdash.json file (new direct-SDK path, used by rca_metrics) Catalog/schema in the JSON is parameterized as "remorph.reconcile." and substituted at deploy time to the workspace's configured catalog/schema, mirroring lsql's replace_database. An optional .lvdash.meta.json sidecar holds the display name; without it the file stem is used. Co-authored-by: Isaac
…reconcile-rca-dashboard
cc47517 to
05dcde1
Compare
# Conflicts: # tests/integration/reconcile/query_builder/test_execute.py
Is that intentional for rollback? If so, worth documenting in the PR body. If not, consider a follow-up or optional cleanup step.
Was this intentional? Transient Lakeview failures were a known issue (per old comments). Worth keeping retries on the new SDK calls if flakiness still happens in CI/deploy.
|
|
Re point 2 ( Points 1, 3 and 5 will be addressed in upcoming commits on this PR. |
A new Lakeview dashboard (rca_metrics) for root-cause analysis of reconcile runs. Replaces the legacy reconciliation_metrics dashboard.
Two sections:
Data model enhancement: rework the nested reconciliation data model for
better usability and queryability.
Remove the LSQL library dependency from the dashboard deployment path.