mirror of
https://github.com/apache/impala.git
synced 2025-12-19 18:12:08 -05:00
IMPALA-12893: (part 2): Upgrade Iceberg to version 1.5.2
This patch updates CDP_BUILD_NUMBER to 71942734 to in order to upgrade Iceberg to 1.5.2. This patch updates some tests so they pass with Iceberg 1.5.2. The behavior changes of Iceberg 1.5.2 are (compared to 1.3.1): * Iceberg V2 tables are created by default * Metadata tables have different schema * Parquet compression is explicitly set for new tables (even for ORC tables) * Sequence numbers are assigned a bit differently Updated the tests where needed. Code changes to accomodate for the above behavior changes: * SHOW CREATE TABLE adds 'format-version'='1' for Iceberg V1 tables * CREATE TABLE statements don't throw errors when Parquet compression is set for ORC tables Change-Id: Ic4f9ed3f7ee9f686044023be938d6b1d18c8842e Reviewed-on: http://gerrit.cloudera.org:8080/23670 Reviewed-by: Riza Suminto <riza.suminto@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
This commit is contained in:
committed by
Impala Public Jenkins
parent
e4a508529c
commit
275f03f10d
@@ -352,91 +352,6 @@ DESCRIBE FORMATTED iceberg_changing_parq_tblprops;
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
CREATE TABLE iceberg_upgrade_v2_no_write_mode (i INT) STORED AS ICEBERG;
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_no_write_mode;
|
||||
---- RESULTS: VERIFY_IS_NOT_IN
|
||||
'','write.delete.mode ','merge-on-read '
|
||||
'','write.update.mode ','merge-on-read '
|
||||
'','write.merge.mode ','merge-on-read '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
# Setting format-version to 1 doesn't add write modes.
|
||||
ALTER TABLE iceberg_upgrade_v2_no_write_mode SET TBLPROPERTIES('format-version'='1');
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_no_write_mode;
|
||||
---- RESULTS: VERIFY_IS_NOT_IN
|
||||
'','write.delete.mode ','merge-on-read '
|
||||
'','write.update.mode ','merge-on-read '
|
||||
'','write.merge.mode ','merge-on-read '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
ALTER TABLE iceberg_upgrade_v2_no_write_mode SET TBLPROPERTIES('format-version'='2');
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_no_write_mode;
|
||||
---- RESULTS: VERIFY_IS_SUBSET
|
||||
'','write.delete.mode ','merge-on-read '
|
||||
'','write.update.mode ','merge-on-read '
|
||||
'','write.merge.mode ','merge-on-read '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
CREATE TABLE iceberg_upgrade_v2_delete_mode (i INT) STORED AS ICEBERG;
|
||||
ALTER TABLE iceberg_upgrade_v2_delete_mode
|
||||
SET TBLPROPERTIES('format-version'='2', 'write.delete.mode'='copy-on-write');
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_delete_mode;
|
||||
---- RESULTS: VERIFY_IS_SUBSET
|
||||
'','write.delete.mode ','copy-on-write '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_delete_mode;
|
||||
---- RESULTS: VERIFY_IS_NOT_IN
|
||||
'','write.update.mode ','merge-on-read '
|
||||
'','write.merge.mode ','merge-on-read '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
CREATE TABLE iceberg_upgrade_v2_update_mode (i INT) STORED AS ICEBERG;
|
||||
ALTER TABLE iceberg_upgrade_v2_update_mode
|
||||
SET TBLPROPERTIES('format-version'='2', 'write.update.mode'='copy-on-write');
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_update_mode;
|
||||
---- RESULTS: VERIFY_IS_SUBSET
|
||||
'','write.update.mode ','copy-on-write '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_update_mode;
|
||||
---- RESULTS: VERIFY_IS_NOT_IN
|
||||
'','write.delete.mode ','merge-on-read '
|
||||
'','write.merge.mode ','merge-on-read '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
CREATE TABLE iceberg_upgrade_v2_merge_mode (i INT) STORED AS ICEBERG;
|
||||
ALTER TABLE iceberg_upgrade_v2_merge_mode
|
||||
SET TBLPROPERTIES('format-version'='2', 'write.merge.mode'='merge-on-read');
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_merge_mode;
|
||||
---- RESULTS: VERIFY_IS_SUBSET
|
||||
'','write.merge.mode ','merge-on-read '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
DESCRIBE FORMATTED iceberg_upgrade_v2_merge_mode;
|
||||
---- RESULTS: VERIFY_IS_NOT_IN
|
||||
'','write.update.mode ','merge-on-read '
|
||||
'','write.delete.mode ','merge-on-read '
|
||||
---- TYPES
|
||||
string, string, string
|
||||
====
|
||||
---- QUERY
|
||||
# Add a column that already exists and a new column that does not exist with
|
||||
# "if not exists" clause.
|
||||
ALTER TABLE ice_alter_cols ADD IF NOT EXISTS COLUMNS (a bigint, d bigint)
|
||||
|
||||
@@ -58,7 +58,7 @@ TIMESTAMP,BIGINT,BIGINT,BOOLEAN
|
||||
select * from functional_parquet.iceberg_query_metadata.metadata_log_entries;
|
||||
---- RESULTS
|
||||
# Example:
|
||||
# 2023-08-16 12:18:11.061000000,'hdfs://localhost:20500/test-warehouse/functional_parquet.db/iceberg_test_metadata/metadata/00000-0ae98ebd-b200-4381-9d97-1f93954423a9.metadata.json',NULL,NULL,NULL
|
||||
# 2023-08-16 12:18:11.061000000,'$NAMENODE/test-warehouse/functional_parquet.db/iceberg_test_metadata/metadata/00000-0ae98ebd-b200-4381-9d97-1f93954423a9.metadata.json',NULL,NULL,NULL
|
||||
row_regex:\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}(\.\d{9})?,'$NAMENODE/test-warehouse/iceberg_test/metadata/iceberg_query_metadata/metadata/.*.metadata.json',NULL,NULL,NULL
|
||||
row_regex:\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}(\.\d{9})?,'$NAMENODE/test-warehouse/iceberg_test/metadata/iceberg_query_metadata/metadata/.*.metadata.json',\d+,0,1
|
||||
row_regex:\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}(\.\d{9})?,'$NAMENODE/test-warehouse/iceberg_test/metadata/iceberg_query_metadata/metadata/.*.metadata.json',\d+,0,2
|
||||
@@ -101,9 +101,9 @@ INT,STRING,BIGINT,INT,BIGINT,INT,INT,INT,INT,INT,INT,STRING
|
||||
---- QUERY
|
||||
select * from functional_parquet.iceberg_query_metadata.`partitions`;
|
||||
---- RESULTS
|
||||
3,3,1,1,0,0
|
||||
3,3,1053,1,1,0,0,regex:.*,regex:\d+
|
||||
---- TYPES
|
||||
BIGINT,INT,BIGINT,INT,BIGINT,INT
|
||||
BIGINT, INT, BIGINT, BIGINT, INT, BIGINT, INT, TIMESTAMP, BIGINT
|
||||
====
|
||||
---- QUERY
|
||||
select * from functional_parquet.iceberg_query_metadata.all_data_files;
|
||||
@@ -995,10 +995,13 @@ describe functional_parquet.iceberg_query_metadata.`partitions`;
|
||||
---- RESULTS
|
||||
'record_count','bigint','Count of records in data files','true'
|
||||
'file_count','int','Count of data files','true'
|
||||
'total_data_file_size_in_bytes','bigint','Total size in bytes of data files','true'
|
||||
'position_delete_record_count','bigint','Count of records in position delete files','true'
|
||||
'position_delete_file_count','int','Count of position delete files','true'
|
||||
'equality_delete_record_count','bigint','Count of records in equality delete files','true'
|
||||
'equality_delete_file_count','int','Count of equality delete files','true'
|
||||
'last_updated_at','timestamp','Commit time of snapshot that last updated this partition','true'
|
||||
'last_updated_snapshot_id','bigint','Id of snapshot that last updated this partition','true'
|
||||
---- TYPES
|
||||
STRING,STRING,STRING,STRING
|
||||
====
|
||||
|
||||
@@ -602,14 +602,6 @@ TBLPROPERTIES('write.parquet.dict-size-bytes'='1073741825');
|
||||
Parquet dictionary page size for Iceberg table should fall in the range of [65536..1073741824]
|
||||
====
|
||||
---- QUERY
|
||||
CREATE TABLE iceberg_wrong_parquet_comp_codec1 ( i int)
|
||||
STORED AS ICEBERG
|
||||
TBLPROPERTIES('write.format.default'='orc',
|
||||
'write.parquet.compression-codec'='snappy');
|
||||
---- CATCH
|
||||
write.parquet.compression-codec should be set only for parquet file format
|
||||
====
|
||||
---- QUERY
|
||||
CREATE TABLE iceberg_wrong_parquet_comp_codec2 ( i int)
|
||||
STORED AS ICEBERG
|
||||
TBLPROPERTIES('write.parquet.compression-codec'='snapp');
|
||||
@@ -625,14 +617,6 @@ TBLPROPERTIES('write.parquet.compression-codec'='snapp');
|
||||
Invalid parquet compression codec for Iceberg table: snapp
|
||||
====
|
||||
---- QUERY
|
||||
CREATE TABLE iceberg_wrong_parquet_comp_level1 ( i int)
|
||||
STORED AS ICEBERG
|
||||
TBLPROPERTIES('write.format.default'='orc',
|
||||
'write.parquet.compression-level'='2');
|
||||
---- CATCH
|
||||
write.parquet.compression-level should be set only for parquet file format
|
||||
====
|
||||
---- QUERY
|
||||
CREATE TABLE iceberg_wrong_parquet_comp_level2 ( i int)
|
||||
STORED AS ICEBERG
|
||||
TBLPROPERTIES('write.parquet.compression-level'='2');
|
||||
|
||||
@@ -507,8 +507,8 @@ SHOW PARTITIONS ice_alter_part;
|
||||
---- RESULTS
|
||||
'{"i":"3","d":"18605"}',1,1
|
||||
'{"i":"4","d":"18606"}',1,1
|
||||
'{"i":"5","d":null,"d_year":"50","s_bucket_5":"2"}',1,1
|
||||
'{"i":"6","d":null,"d_year":"50","s_bucket_5":"0"}',1,1
|
||||
'{"i":"5","d_year":"50","s_bucket_5":"2"}',1,1
|
||||
'{"i":"6","d_year":"50","s_bucket_5":"0"}',1,1
|
||||
'{}',2,1
|
||||
---- TYPES
|
||||
STRING, BIGINT, BIGINT
|
||||
@@ -578,10 +578,10 @@ STRING, STRING, STRING, STRING
|
||||
---- QUERY
|
||||
SHOW PARTITIONS ice_void;
|
||||
---- RESULTS
|
||||
'{"d_year":"34","i":"4","s_null":null}',1,1
|
||||
'{"i_null":null,"s_trunc":"o","d_year":"31"}',2,1
|
||||
'{"i_null":null,"s_trunc":"t","d_year":"32"}',1,1
|
||||
'{"i_null":null,"s_trunc":"t","d_year":"33"}',1,1
|
||||
'{"i_null":null,"s_trunc":null,"d_year":"34","i":"4","s_null":null}',1,1
|
||||
---- TYPES
|
||||
STRING, BIGINT, BIGINT
|
||||
====
|
||||
@@ -616,11 +616,11 @@ STRING, STRING, STRING, STRING
|
||||
---- QUERY
|
||||
SHOW PARTITIONS ice_void;
|
||||
---- RESULTS
|
||||
'{"d_year":"34","i":"4","s_null":null}',1,1
|
||||
'{"i":"5","s_null":null,"d_null":null}',2,1
|
||||
'{"i_null":null,"s_trunc":"o","d_year":"31"}',2,1
|
||||
'{"i_null":null,"s_trunc":"t","d_year":"32"}',1,1
|
||||
'{"i_null":null,"s_trunc":"t","d_year":"33"}',1,1
|
||||
'{"i_null":null,"s_trunc":null,"d_year":"34","i":"4","s_null":null}',1,1
|
||||
'{"i_null":null,"s_trunc":null,"d_year":null,"i":"5","s_null":null,"d_null":null}',2,1
|
||||
---- TYPES
|
||||
STRING, BIGINT, BIGINT
|
||||
====
|
||||
@@ -658,17 +658,18 @@ STRING, STRING, STRING, STRING
|
||||
---- QUERY
|
||||
SHOW PARTITIONS ice_void;
|
||||
---- RESULTS
|
||||
'{"d_year":"34","i":"4","s_null":null}',1,1
|
||||
'{"i":"5","s_null":null,"d_null":null}',2,1
|
||||
'{"i_null":null,"s_trunc":"o","d_year":"31"}',2,1
|
||||
'{"i_null":null,"s_trunc":"t","d_year":"32"}',1,1
|
||||
'{"i_null":null,"s_trunc":"t","d_year":"33"}',1,1
|
||||
'{"i_null":null,"s_trunc":null,"d_year":"34","i":"4","s_null":null}',1,1
|
||||
'{"i_null":null,"s_trunc":null,"d_year":null,"i":"5","s_null":null,"d_null":null}',2,1
|
||||
'{"i_null":null,"s_trunc":null,"d_year":null,"i":null,"s_null":null,"d_null":null}',2,1
|
||||
'{"s_null":null,"d_null":null,"i_null":null}',2,1
|
||||
---- TYPES
|
||||
STRING, BIGINT, BIGINT
|
||||
====
|
||||
---- QUERY
|
||||
create table store_sales partitioned by spec (ss_sold_date_sk) stored as iceberg
|
||||
create table store_sales partitioned by spec (ss_sold_date_sk)
|
||||
stored as iceberg
|
||||
as select * from tpcds_parquet.store_sales;
|
||||
select count(*) from store_sales;
|
||||
---- RESULTS
|
||||
@@ -790,7 +791,7 @@ show partitions special_char_partitions;
|
||||
'{"i":"3","s":"11=14=31","s_trunc":"11=1"}',1,1
|
||||
'{"i":"4","s":"","s_trunc":""}',1,1
|
||||
'{"i":"5","s":null,"s_trunc":null}',1,1
|
||||
'{"i":null,"s":null,"s_trunc":null,"s2":"98\\/22"}',1,1
|
||||
'{"s2":"98\\/22"}',1,1
|
||||
---- TYPES
|
||||
STRING,BIGINT,BIGINT
|
||||
====
|
||||
|
||||
@@ -43,10 +43,10 @@ select col_i, ICEBERG__DATA__SEQUENCE__NUMBER from ice_tbl order by col_i;
|
||||
---- TYPES
|
||||
INT,BIGINT
|
||||
---- RESULTS
|
||||
0,0
|
||||
1,0
|
||||
3,0
|
||||
5,0
|
||||
0,1
|
||||
1,1
|
||||
3,1
|
||||
5,1
|
||||
====
|
||||
---- QUERY
|
||||
# select virtual colum without selecting any other slots.
|
||||
@@ -54,7 +54,7 @@ select max(ICEBERG__DATA__SEQUENCE__NUMBER) from ice_tbl;
|
||||
---- TYPES
|
||||
BIGINT
|
||||
---- RESULTS
|
||||
0
|
||||
1
|
||||
====
|
||||
---- QUERY
|
||||
# Testing data sequence number for unpartitioned V2 tables.
|
||||
|
||||
@@ -65,8 +65,8 @@ CREATE EXTERNAL TABLE show_create_table_test_db.ice_with_stats (
|
||||
)
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('OBJCAPABILITIES'='EXTREAD,EXTWRITE', 'engine.hive.enabled'='true', 'external.table.purge'='TRUE', 'impala.computeStatsSnapshotIds'='<NUM>', 'impala.lastComputeStatsTime'='<NUM>', 'table_type'='ICEBERG', 'write.format.default'='parquet');
|
||||
ALTER TABLE show_create_table_test_db.ice_with_stats SET TBLPROPERTIES ('EXTERNAL'='TRUE', 'OBJCAPABILITIES'='EXTREAD,EXTWRITE', 'engine.hive.enabled'='true', 'external.table.purge'='TRUE', 'impala.computeStatsSnapshotIds'='<NUM>', 'impala.events.catalogServiceId'='<NUM>', 'impala.events.catalogVersion'='<NUM>', 'impala.lastComputeStatsTime'='<NUM>', 'numFiles'='<NUM>', 'numRows'='<NUM>', 'table_type'='ICEBERG', 'totalSize'='<NUM>', 'write.format.default'='parquet');
|
||||
TBLPROPERTIES ('OBJCAPABILITIES'='EXTREAD,EXTWRITE', 'engine.hive.enabled'='true', 'external.table.purge'='TRUE', 'impala.computeStatsSnapshotIds'='<NUM>', 'impala.lastComputeStatsTime'='<NUM>', 'table_type'='ICEBERG', 'write.delete.mode'='merge-on-read', 'write.format.default'='parquet', 'write.merge.mode'='merge-on-read', 'write.parquet.compression-codec'='snappy', 'write.update.mode'='merge-on-read');
|
||||
ALTER TABLE show_create_table_test_db.ice_with_stats SET TBLPROPERTIES ('EXTERNAL'='TRUE', 'OBJCAPABILITIES'='EXTREAD,EXTWRITE', 'engine.hive.enabled'='true', 'external.table.purge'='TRUE', 'impala.computeStatsSnapshotIds'='<NUM>', 'impala.events.catalogServiceId'='<NUM>', 'impala.events.catalogVersion'='<NUM>', 'impala.lastComputeStatsTime'='<NUM>', 'numFiles'='<NUM>', 'numRows'='<NUM>', 'table_type'='ICEBERG', 'totalSize'='<NUM>', 'write.delete.mode'='merge-on-read', 'write.format.default'='parquet', 'write.merge.mode'='merge-on-read', 'write.parquet.compression-codec'='snappy', 'write.update.mode'='merge-on-read');
|
||||
ALTER TABLE show_create_table_test_db.ice_with_stats SET COLUMN STATS i ('numDVs'='1', 'numNulls'='0', 'numTrues'='-1', 'numFalses'='-1');
|
||||
ALTER TABLE show_create_table_test_db.ice_with_stats SET COLUMN STATS s ('numDVs'='1', 'numNulls'='0', 'maxSize'='1', 'avgSize'='1', 'numTrues'='-1', 'numFalses'='-1');
|
||||
====
|
||||
|
||||
@@ -612,6 +612,9 @@ STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE',
|
||||
'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read',
|
||||
'write.format.default'='parquet',
|
||||
'write.parquet.compression-codec'='zstd',
|
||||
'write.parquet.compression-level'='12',
|
||||
@@ -642,6 +645,9 @@ CREATE EXTERNAL TABLE show_create_table_test_db.iceberg_test2 (
|
||||
STORED AS ICEBERG
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE',
|
||||
'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read',
|
||||
'write.format.default'='parquet',
|
||||
'write.parquet.compression-codec'='zstd',
|
||||
'write.parquet.compression-level'='12',
|
||||
@@ -674,6 +680,9 @@ CREATE EXTERNAL TABLE show_create_table_test_db.iceberg_test3 (
|
||||
STORED AS ICEBERG
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE',
|
||||
'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read',
|
||||
'write.format.default'='parquet',
|
||||
'write.parquet.compression-codec'='zstd',
|
||||
'write.parquet.compression-level'='12',
|
||||
@@ -732,6 +741,9 @@ PARTITIONED BY SPEC (
|
||||
STORED AS ICEBERG
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE',
|
||||
'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read',
|
||||
'write.format.default'='parquet',
|
||||
'write.parquet.compression-codec'='zstd',
|
||||
'write.parquet.compression-level'='12',
|
||||
@@ -756,8 +768,10 @@ CREATE EXTERNAL TABLE show_create_table_test_db.iceberg_test_orc (
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='orc',
|
||||
'engine.hive.enabled'='true', 'iceberg.catalog'='hadoop.tables')
|
||||
'external.table.purge'='TRUE', 'write.format.default'='orc',
|
||||
'engine.hive.enabled'='true', 'iceberg.catalog'='hadoop.tables',
|
||||
'write.delete.mode'='merge-on-read', 'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Default Iceberg table
|
||||
@@ -771,8 +785,10 @@ CREATE EXTERNAL TABLE show_create_table_test_db.iceberg_default_tbl (
|
||||
)
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('write.format.default'='parquet', 'engine.hive.enabled'='true',
|
||||
'external.table.purge'='TRUE', 'table_type'='ICEBERG')
|
||||
TBLPROPERTIES ('external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read', 'write.merge.mode'='merge-on-read',
|
||||
'write.parquet.compression-codec'='snappy')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Default Iceberg table with ORC format
|
||||
@@ -789,8 +805,10 @@ CREATE EXTERNAL TABLE show_create_table_test_db.iceberg_default_tbl_orc (
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'write.format.default'='orc',
|
||||
'engine.hive.enabled'='true', 'external.table.purge'='TRUE', 'table_type'='ICEBERG')
|
||||
'write.format.default'='orc', 'write.parquet.compression-codec'='snappy',
|
||||
'engine.hive.enabled'='true', 'external.table.purge'='TRUE', 'table_type'='ICEBERG',
|
||||
'write.update.mode'='merge-on-read', 'write.merge.mode'='merge-on-read',
|
||||
'write.delete.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Iceberg table in HiveCatalog
|
||||
@@ -807,8 +825,10 @@ CREATE EXTERNAL TABLE show_create_table_test_db.iceberg_hive_cat_explicit (
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'write.format.default'='parquet', 'iceberg.catalog'='hive.catalog',
|
||||
'engine.hive.enabled'='true', 'external.table.purge'='TRUE', 'table_type'='ICEBERG')
|
||||
'write.format.default'='parquet', 'iceberg.catalog'='hive.catalog',
|
||||
'engine.hive.enabled'='true', 'external.table.purge'='TRUE', 'table_type'='ICEBERG',
|
||||
'write.parquet.compression-codec'='snappy', 'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read', 'write.merge.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
CREATE TABLE iceberg_nullable_test (
|
||||
@@ -835,6 +855,9 @@ STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE',
|
||||
'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read',
|
||||
'write.format.default'='parquet',
|
||||
'write.parquet.compression-codec'='zstd',
|
||||
'write.parquet.compression-level'='12',
|
||||
@@ -858,7 +881,9 @@ PARTITIONED BY SPEC (p, d)
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG')
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.parquet.compression-codec'='snappy',
|
||||
'write.delete.mode'='merge-on-read', 'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
CREATE TABLE iceberg_ctas
|
||||
@@ -875,7 +900,9 @@ PARTITIONED BY SPEC (BUCKET(5, id))
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG')
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.parquet.compression-codec'='snappy',
|
||||
'write.delete.mode'='merge-on-read', 'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
CREATE TABLE iceberg_ctas_ht
|
||||
@@ -894,8 +921,9 @@ PARTITIONED BY SPEC (BUCKET(5, id))
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'iceberg.catalog'='hadoop.tables')
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'iceberg.catalog'='hadoop.tables', 'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read', 'write.merge.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
CREATE TABLE iceberg_catalogs_hive (i int)
|
||||
@@ -909,8 +937,10 @@ PARTITIONED BY SPEC (BUCKET(3, i))
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG')
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.parquet.compression-codec'='snappy',
|
||||
'write.delete.mode'='merge-on-read', 'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
CREATE TABLE iceberg_catalogs_hadoop (i int)
|
||||
@@ -924,8 +954,9 @@ PARTITIONED BY SPEC (BUCKET(3, i))
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'iceberg.catalog'='ice_hadoop_cat')
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'iceberg.catalog'='ice_hadoop_cat', 'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read', 'write.merge.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
CREATE TABLE iceberg_void_transform (i int, j int)
|
||||
@@ -937,7 +968,9 @@ PARTITIONED BY SPEC (VOID(i), VOID(j))
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG')
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.parquet.compression-codec'='snappy'
|
||||
'write.delete.mode'='merge-on-read', 'write.update.mode'='merge-on-read',
|
||||
'write.merge.mode'='merge-on-read')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Creating V1 tables explicitly should not set 'merge-on-read' write modes if no write mode is
|
||||
@@ -950,8 +983,9 @@ CREATE EXTERNAL TABLE show_create_table_test_db.ice_explicit_v1 (i INT NULL)
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG')
|
||||
'format-version'='1', 'engine.hive.enabled'='true', 'external.table.purge'='TRUE',
|
||||
'table_type'='ICEBERG',
|
||||
'write.format.default'='parquet', 'write.parquet.compression-codec'='snappy')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Creating V2 tables should set 'merge-on-read' write modes if no write mode is specified.
|
||||
@@ -965,7 +999,8 @@ LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.delete.mode'='merge-on-read',
|
||||
'write.update.mode'='merge-on-read', 'write.merge.mode'='merge-on-read')
|
||||
'write.update.mode'='merge-on-read', 'write.merge.mode'='merge-on-read',
|
||||
'write.parquet.compression-codec'='snappy')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Creating V2 tables should not set write mode if user specified any of it to any value.
|
||||
@@ -978,8 +1013,9 @@ CREATE EXTERNAL TABLE show_create_table_test_db.ice_v2_explicit_delete (i INT NU
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.delete.mode'='merge-on-read')
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.delete.mode'='merge-on-read',
|
||||
'write.parquet.compression-codec'='snappy')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Creating V2 tables should not set write mode if user specified any of it to any value.
|
||||
@@ -992,8 +1028,9 @@ CREATE EXTERNAL TABLE show_create_table_test_db.ice_v2_explicit_delete_2 (i INT
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.delete.mode'='copy-on-write')
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.delete.mode'='copy-on-write',
|
||||
'write.parquet.compression-codec'='snappy')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Creating V2 tables should not set write mode if user specified any of it to any value.
|
||||
@@ -1006,8 +1043,9 @@ CREATE EXTERNAL TABLE show_create_table_test_db.ice_v2_explicit_update (i INT NU
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.update.mode'='copy-on-write')
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.update.mode'='copy-on-write',
|
||||
'write.parquet.compression-codec'='snappy')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Creating V2 tables should not set write mode if user specified any of it to any value.
|
||||
@@ -1020,8 +1058,9 @@ CREATE EXTERNAL TABLE show_create_table_test_db.ice_v2_explicit_merge (i INT NUL
|
||||
STORED AS ICEBERG
|
||||
LOCATION '$$location_uri$$'
|
||||
TBLPROPERTIES ('TRANSLATED_TO_EXTERNAL'='TRUE',
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.merge.mode'='copy-on-write')
|
||||
'external.table.purge'='TRUE', 'write.format.default'='parquet',
|
||||
'engine.hive.enabled'='true', 'table_type'='ICEBERG', 'write.merge.mode'='copy-on-write',
|
||||
'write.parquet.compression-codec'='snappy')
|
||||
====
|
||||
---- CREATE_TABLE
|
||||
# Test create Bucketed Table
|
||||
|
||||
Reference in New Issue
Block a user