Forum Discussion

TheOddOne's avatar
TheOddOne
Frequent Visitor
1 year ago
Solved

Cannot create liquid clustering on existing unpartitioned table

Got this when trying to run "Alter table cluster by ()"   [DELTA_ALTER_TABLE_CLUSTER_BY_NOT_ALLOWED] ALTER TABLE CLUSTER BY is supported only for Delta table with clustering.   According to this ...
  • Vinodh247's avatar
    1 year ago

    in theory, this should work only if:

    1. Your table is unpartitioned (which you said it is good).
    2. Clustering is supported and enabled for that table’s version/runtime.
    3. You're using a runtime version that supports liquid clustering like Databricks Runtime > 14.2, or Delta Lake 3.2+ depending on your environment.

    If your runtime is too old (pre 14.2), or if your Delta Lake version is < 3.2, or if clustering was explicitly disabled via table properties, you will get this error.

     

    But you mentioned this worked in another workspace recently. The most likely variation between the env? Databricks runtime version or Delta Lake version difference or possibly feature flag or table feature mismatch?

     

    Possible fix to try: align runtime to the minimum version supporting clustering, validate table features, and then run the ALTER TABLE

     

    Please 'Kudos' and 'Accept as Solution' if this answered your query.