Skip to content

HIVE-29699: Iceberg: Add support for the Unknown data type#6588

Merged
difin merged 2 commits into
apache:masterfrom
difin:unknown_data_type
Jul 10, 2026
Merged

HIVE-29699: Iceberg: Add support for the Unknown data type#6588
difin merged 2 commits into
apache:masterfrom
difin:unknown_data_type

Conversation

@difin

@difin difin commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

This PR adds Iceberg V3 UNKNOWN type support in Hive, following the same pattern as VARIANT: new serde/types, parser token, schema conversion, object inspectors, and wiring through DDL, semantic analysis, and vectorized execution.

Why are the changes needed?

Iceberg format version 3 introduced the unknown type for placeholder columns that only accept NULL. Hive needs explicit support for that type in its parser, serde, schema conversion, and execution paths, or Iceberg V3 tables using unknown fail on create, insert, select, and alter.

Does this PR introduce any user-facing change?

Yes.

Users can define and use the UNKNOWN type on Iceberg tables: create columns, insert NULL, select, and add columns via ALTER TABLE.

How was this patch tested?

Unit tests: TestHiveStorageHandlerColumnTypes for storage-handler column-type checks.
Q-tests: positive unknown_type.q (create, insert, select, alter, desc on v3);
negative: unknown_type_non_iceberg_table.q tests that UNKNOWN type cannot be used on native Hive tables.

@difin difin force-pushed the unknown_data_type branch from fe834c2 to 7429ee4 Compare July 10, 2026 13:59
@difin difin marked this pull request as ready for review July 10, 2026 13:59

@ayushtkn ayushtkn left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanx @difin can you add a test for CTAS/CTLT as well that the type is preserved in that

other than that Changes LGTM

@sonarqubecloud

Copy link
Copy Markdown

@difin

difin commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Thanks for review and approval, @ayushtkn!!
I've added the missing tests.

@difin difin merged commit e14df63 into apache:master Jul 10, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants