<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Unable to Add Multiple Columns in Single ALTER TABLE Statement on Iceberg Table via Unity REST C in Data Engineering</title>
    <link>https://community.databricks.com/t5/data-engineering/unable-to-add-multiple-columns-in-single-alter-table-statement/m-p/135840#M50443</link>
    <description>&lt;P&gt;This error stems from the Iceberg table metadata update constraints enforced by the Unity Catalog's REST API. Specifically, the Iceberg REST Catalog currently does not support multiple schema changes in a single commit. Each ALTER TABLE operation that modifies the schema (e.g., adding columns) triggers a SetCurrentSchema update, and the system restricts this to one per commit.&lt;/P&gt;&lt;P&gt;To avoid this error:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Add columns one at a time using separate ALTER TABLE statements.&lt;/LI&gt;&lt;LI&gt;If automating schema evolution, ensure your logic batches column additions sequentially.&lt;/LI&gt;&lt;/UL&gt;&lt;LI-CODE lang="python"&gt;columns_comments = {
    "col1": "comment1",
    "col2": "comment2",
    ....
    "col236": "comment236",
}

for col, comment in columns_comments.items():
    spark.sql(f"ALTER TABLE table_name CHANGE COLUMN {col} SET COMMENT '{comment}'")&lt;/LI-CODE&gt;&lt;P&gt;Consider raising a support ticket or feature request with Databricks if this limitation impacts your workflow significantly.&lt;/P&gt;</description>
    <pubDate>Thu, 23 Oct 2025 13:24:52 GMT</pubDate>
    <dc:creator>nayan_wylde</dc:creator>
    <dc:date>2025-10-23T13:24:52Z</dc:date>
    <item>
      <title>Unable to Add Multiple Columns in Single ALTER TABLE Statement on Iceberg Table via Unity REST Catal</title>
      <link>https://community.databricks.com/t5/data-engineering/unable-to-add-multiple-columns-in-single-alter-table-statement/m-p/135837#M50442</link>
      <description>&lt;DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;Hello Databricks Team,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;I have implemented code &lt;/SPAN&gt;&lt;SPAN&gt;to&lt;/SPAN&gt;&lt;SPAN&gt; integrate the Iceberg Unity REST &lt;/SPAN&gt;&lt;SPAN&gt;Catalog&lt;/SPAN&gt; &lt;SPAN&gt;with&lt;/SPAN&gt;&lt;SPAN&gt; the Teradata OTF engine &lt;/SPAN&gt;&lt;SPAN&gt;and&lt;/SPAN&gt;&lt;SPAN&gt; successfully performed &lt;/SPAN&gt;&lt;SPAN&gt;read&lt;/SPAN&gt; &lt;SPAN&gt;and&lt;/SPAN&gt;&lt;SPAN&gt; write operations, &lt;/SPAN&gt;&lt;SPAN&gt;following&lt;/SPAN&gt;&lt;SPAN&gt; the documentation &lt;/SPAN&gt;&lt;SPAN&gt;at&lt;/SPAN&gt;&lt;SPAN&gt; https:&lt;/SPAN&gt;&lt;SPAN&gt;//&lt;/SPAN&gt;&lt;SPAN&gt;docs&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;databricks&lt;/SPAN&gt;&lt;SPAN&gt;.com&lt;/SPAN&gt;&lt;SPAN&gt;/&lt;/SPAN&gt;&lt;SPAN&gt;aws&lt;/SPAN&gt;&lt;SPAN&gt;/&lt;/SPAN&gt;&lt;SPAN&gt;en&lt;/SPAN&gt;&lt;SPAN&gt;/&lt;/SPAN&gt;&lt;SPAN&gt;external&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;access&lt;/SPAN&gt;&lt;SPAN&gt;/&lt;/SPAN&gt;&lt;SPAN&gt;iceberg#&lt;/SPAN&gt;&lt;SPAN&gt;gsc&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;tab&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;. However, I am encountering the &lt;/SPAN&gt;&lt;SPAN&gt;following&lt;/SPAN&gt;&lt;SPAN&gt; problem:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;When&lt;/SPAN&gt;&lt;SPAN&gt; attempting &lt;/SPAN&gt;&lt;SPAN&gt;to&lt;/SPAN&gt; &lt;SPAN&gt;add&lt;/SPAN&gt;&lt;SPAN&gt; multiple columns &lt;/SPAN&gt;&lt;SPAN&gt;in&lt;/SPAN&gt;&lt;SPAN&gt; a single &lt;/SPAN&gt;&lt;SPAN&gt;ALTER&lt;/SPAN&gt; &lt;SPAN&gt;TABLE&lt;/SPAN&gt; &lt;SPAN&gt;statement&lt;/SPAN&gt; &lt;SPAN&gt;on&lt;/SPAN&gt;&lt;SPAN&gt; an Iceberg &lt;/SPAN&gt;&lt;SPAN&gt;table&lt;/SPAN&gt;&lt;SPAN&gt; managed via Databricks Unity &lt;/SPAN&gt;&lt;SPAN&gt;Catalog&lt;/SPAN&gt; &lt;SPAN&gt;and&lt;/SPAN&gt;&lt;SPAN&gt; cloud storage (AWS&lt;/SPAN&gt;&lt;SPAN&gt;/&lt;/SPAN&gt;&lt;SPAN&gt;GCP&lt;/SPAN&gt;&lt;SPAN&gt;/&lt;/SPAN&gt;&lt;SPAN&gt;AZURE), the operation fails &lt;/SPAN&gt;&lt;SPAN&gt;with&lt;/SPAN&gt;&lt;SPAN&gt; the error:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;Commit&lt;/SPAN&gt;&lt;SPAN&gt; failed: Failed &lt;/SPAN&gt;&lt;SPAN&gt;to&lt;/SPAN&gt; &lt;SPAN&gt;commit&lt;/SPAN&gt; &lt;SPAN&gt;to&lt;/SPAN&gt;&lt;SPAN&gt; the &lt;/SPAN&gt;&lt;SPAN&gt;table&lt;/SPAN&gt;&lt;SPAN&gt;, requirement failed: There may be &lt;/SPAN&gt;&lt;SPAN&gt;at&lt;/SPAN&gt;&lt;SPAN&gt; most &lt;/SPAN&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt; SetCurrentSchema metadata &lt;/SPAN&gt;&lt;SPAN&gt;update&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;Steps &lt;/SPAN&gt;&lt;SPAN&gt;to&lt;/SPAN&gt;&lt;SPAN&gt; reproduce:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;Create&lt;/SPAN&gt;&lt;SPAN&gt; a &lt;/SPAN&gt;&lt;SPAN&gt;table&lt;/SPAN&gt; &lt;SPAN&gt;with&lt;/SPAN&gt;&lt;SPAN&gt; two columns.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;2&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;Add&lt;/SPAN&gt;&lt;SPAN&gt; a single column &lt;/SPAN&gt;&lt;SPAN&gt;using&lt;/SPAN&gt; &lt;SPAN&gt;ALTER&lt;/SPAN&gt; &lt;SPAN&gt;TABLE&lt;/SPAN&gt;&lt;SPAN&gt; ... &lt;/SPAN&gt;&lt;SPAN&gt;ADD&lt;/SPAN&gt;&lt;SPAN&gt; ... (works &lt;/SPAN&gt;&lt;SPAN&gt;as&lt;/SPAN&gt;&lt;SPAN&gt; expected).&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;3&lt;/SPAN&gt;&lt;SPAN&gt;) Attempt &lt;/SPAN&gt;&lt;SPAN&gt;to&lt;/SPAN&gt; &lt;SPAN&gt;add&lt;/SPAN&gt;&lt;SPAN&gt; two columns &lt;/SPAN&gt;&lt;SPAN&gt;in&lt;/SPAN&gt;&lt;SPAN&gt; one &lt;/SPAN&gt;&lt;SPAN&gt;statement&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;ALTER&lt;/SPAN&gt; &lt;SPAN&gt;TABLE&lt;/SPAN&gt;&lt;SPAN&gt; ... &lt;/SPAN&gt;&lt;SPAN&gt;ADD&lt;/SPAN&gt;&lt;SPAN&gt; col1 &lt;/SPAN&gt;&lt;SPAN&gt;type&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;ADD&lt;/SPAN&gt;&lt;SPAN&gt; col2 &lt;/SPAN&gt;&lt;SPAN&gt;type&lt;/SPAN&gt;&lt;SPAN&gt;; (fails &lt;/SPAN&gt;&lt;SPAN&gt;with&lt;/SPAN&gt;&lt;SPAN&gt; the above error).&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;I do &lt;/SPAN&gt;&lt;SPAN&gt;not&lt;/SPAN&gt;&lt;SPAN&gt; have access &lt;/SPAN&gt;&lt;SPAN&gt;to&lt;/SPAN&gt;&lt;SPAN&gt; the Databricks Unity &lt;/SPAN&gt;&lt;SPAN&gt;Catalog&lt;/SPAN&gt;&lt;SPAN&gt; code base &lt;/SPAN&gt;&lt;SPAN&gt;to&lt;/SPAN&gt;&lt;SPAN&gt; debug this issue, &lt;/SPAN&gt;&lt;SPAN&gt;as&lt;/SPAN&gt;&lt;SPAN&gt; it &lt;/SPAN&gt;&lt;SPAN&gt;is&lt;/SPAN&gt;&lt;SPAN&gt; owned &lt;/SPAN&gt;&lt;SPAN&gt;by&lt;/SPAN&gt;&lt;SPAN&gt; the Databricks team. Could you clarify &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; this &lt;/SPAN&gt;&lt;SPAN&gt;is&lt;/SPAN&gt;&lt;SPAN&gt; a known limitation &lt;/SPAN&gt;&lt;SPAN&gt;or&lt;/SPAN&gt;&lt;SPAN&gt; a bug &lt;/SPAN&gt;&lt;SPAN&gt;in&lt;/SPAN&gt;&lt;SPAN&gt; the REST &lt;/SPAN&gt;&lt;SPAN&gt;Catalog&lt;/SPAN&gt;&lt;SPAN&gt; implementation?&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 23 Oct 2025 12:22:18 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/unable-to-add-multiple-columns-in-single-alter-table-statement/m-p/135837#M50442</guid>
      <dc:creator>Ashok_Vengala</dc:creator>
      <dc:date>2025-10-23T12:22:18Z</dc:date>
    </item>
    <item>
      <title>Re: Unable to Add Multiple Columns in Single ALTER TABLE Statement on Iceberg Table via Unity REST C</title>
      <link>https://community.databricks.com/t5/data-engineering/unable-to-add-multiple-columns-in-single-alter-table-statement/m-p/135840#M50443</link>
      <description>&lt;P&gt;This error stems from the Iceberg table metadata update constraints enforced by the Unity Catalog's REST API. Specifically, the Iceberg REST Catalog currently does not support multiple schema changes in a single commit. Each ALTER TABLE operation that modifies the schema (e.g., adding columns) triggers a SetCurrentSchema update, and the system restricts this to one per commit.&lt;/P&gt;&lt;P&gt;To avoid this error:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Add columns one at a time using separate ALTER TABLE statements.&lt;/LI&gt;&lt;LI&gt;If automating schema evolution, ensure your logic batches column additions sequentially.&lt;/LI&gt;&lt;/UL&gt;&lt;LI-CODE lang="python"&gt;columns_comments = {
    "col1": "comment1",
    "col2": "comment2",
    ....
    "col236": "comment236",
}

for col, comment in columns_comments.items():
    spark.sql(f"ALTER TABLE table_name CHANGE COLUMN {col} SET COMMENT '{comment}'")&lt;/LI-CODE&gt;&lt;P&gt;Consider raising a support ticket or feature request with Databricks if this limitation impacts your workflow significantly.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Oct 2025 13:24:52 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/unable-to-add-multiple-columns-in-single-alter-table-statement/m-p/135840#M50443</guid>
      <dc:creator>nayan_wylde</dc:creator>
      <dc:date>2025-10-23T13:24:52Z</dc:date>
    </item>
  </channel>
</rss>

