Problem
When you attempt to run a Delta Live Tables (DLT) pipeline that materializes a metric view, you encounter the following error.
pyspark.errors.exceptions.captured.AnalysisException: [INTERNAL_ERROR_METADATA_CATALOG.METRIC_VIEW_DEFINITION] An object in the metadata catalog has been corrupted: Corrupted metric view definition in catalog. Property metric_view.from.name is missing or corrupted in `<catalog-name>`.`<schema-name>`.`<metric-view-name>`. SQLSTATE: XX000
Cause
The DLT pipeline is consuming the metrics view using SELECT * or spark.table, which are not supported methods.
Alternatively, the DLT pipeline is using the Current channel. The Current channel at the time of publish (Sept 2025) uses a Databricks Runtime version below 16.4 LTS. Metric views are not supported in Databricks Runtime versions below 16.4 LTS.
Solution
Set up your DLT pipeline to use a supported method to access the metrics view. The following code provides an example.
select <column-name-or-names>, MEASURE(<column-name>) from <metric-view>
For more information, review the Unity Catalog metric views (AWS | Azure | GCP) documentation.
Alternatively, run your DLT pipeline using the Preview channel. The Preview channel uses Databricks Runtime 16.4 LTS or above, which supports metric views.
You can change the pipeline channel either in the UI or using code.
From the UI
- In your DLT pipeline UI, click Settings.
- Scroll down to Advanced > Channel.
- Choose Preview from the dropdown menu.
Using code
- In your DLT pipeline UI, click Settings.
- Click the JSON button in the pipeline settings view.
- Set the tag
channel
to“PREVIEW”
.
- Click Save.