trinodb/trino

Restrict drop column operations for hive tables

Aperta

#20.807 aperta il 22 feb 2024

 (4 commenti) (0 reazioni) (0 assegnatari)Java (2678 fork)batch import
good first issuehive

Metriche repository

Star
 (9113 stelle)
Metriche merge PR
 (Merge medio 5g 9h) (306 PR mergiate in 30 g)

Descrizione

As per the Hive docs - https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-AlterTable/Partition/Column

REPLACE COLUMNS removes all existing columns and adds the new set of columns. This can be done only for tables with a native SerDe (DynamicSerDe, MetadataTypedColumnsetSerDe, LazySimpleSerDe and ColumnarSerDe). Refer to Hive SerDe for more information. REPLACE COLUMNS can also be used to drop columns. For example, "ALTER TABLE test_change REPLACE COLUMNS (a int, b int);" will remove column 'c' from test_change's schema.

But we try to run replace columns operation for all the file formats which provides inconsistent behavior both from Trino's hive connector and querying hive directly.

Guida contributor