Cannot create streaming table

databrick_enthu
New Contributor

Hi,

while trying to create a streaming table in sql notebook, i am getting below error. please can you assist to fix it.

The operation CREATE is not allowed: Cannot CREATE the Streaming Table `my_catalog`.`test_schema`.`emp` in Serverless Generic Compute for your workspace. Enable it by enrolling in the Serverless Generic Compute Materialized View/Streaming Table workspace feature preview. If you do not see the beta feature preview available in workspace, please contact your Databricks representative. SQLSTATE: 42601

 

thanks,

db_enthu

NageshPatil
New Contributor III

The error occurs because your Databricks workspace uses Serverless Generic Compute, which requires a specific preview feature for creating streaming tables or materialized views. To resolve this, you must enroll in the "Serverless Generic Compute Materialized View/Streaming Table" workspace feature preview.

Enable the Feature
Access your Databricks workspace admin settings or account console to check for available beta/preview features under workspace configuration. If the option appears, enable it directly; otherwise, contact your Databricks account representative as instructed in the error.

Prerequisites
Ensure your workspace has Unity Catalog enabled and serverless compute activated, as streaming tables rely on serverless pipelines. Use a compatible SQL warehouse (serverless-enabled) for the CREATE STREAMING TABLE command in your notebook.

Workaround Options
Switch to a non-serverless SQL warehouse or cluster if available for testing, though full streaming table support needs serverless.

Use CREATE OR REFRESH STREAMING TABLE syntax post-enrollment, specifying Unity Catalog fully (e.g., my_catalog.test_schema.emp).

DBX documentation:
https://docs.databricks.com/aws/en/ldp/dbsql/streaming

Nagesh Patil

aleksandra_ch
Databricks Employee
Databricks Employee

Hi @databrick_enthu ,

The error is unfortunately misleading. The Materialized View / Streaming Table on Serverless Generic Compute is not yet available for a Preview.

 For now, you have two possibilities:

  • Attach the notebook to a Serverless SQL Warehouse. This will create a Streaming table and a standalone Declarative Pipeline for it. You will find the pipeline in Jobs & Pipelines > Pipelines > Pipeline named ST-<table_name>
  • Create a Declarative pipeline out from your SQL notebook. For this, go to Jobs & Pipelines > Create ETL Pipeline > Add Existing Assets (your notebook). Find the whole tutorial here.

Hope it helps.

Best regards