Dharmik Thakkar created HIVE-27441:
--------------------------------------
Summary: Iceberg CTLT with source table as Hive managed table
fails with "The table must be stored using an ACID compliant format"
Key: HIVE-27441
URL: https://issues.apache.org/jira/browse/HIVE-27441
Project: Hive
Issue Type: Bug
Components: Iceberg integration
Reporter: Dharmik Thakkar
Iceberg CTLT with source table as Hive managed table fails with "The table must
be stored using an ACID compliant format"
As part of HIVE-26519 the support for creating Iceberg tables using CTLT was
added.
{code:java}
CREATE TABLE `tpch`.`lineitem`(`l_orderkey` int,`l_partkey` int,`l_suppkey`
int,`l_linenumber` int,`l_quantity` decimal(15,2),`l_extendedprice`
decimal(15,2),`l_discount` decimal(15,2),`l_tax` decimal(15,2),`l_returnflag`
char(1),`l_linestatus` char(1),`l_shipdate` date,`l_commitdate`
date,`l_receiptdate` date,`l_shipinstruct` char(25),`l_shipmode`
char(10),`l_comment` string)ROW FORMAT
SERDE'org.apache.hadoop.hive.ql.io.orc.OrcSerde'STORED AS
INPUTFORMAT'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'OUTPUTFORMAT'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'LOCATION's3a://qe-s3-bucket-weekly/cc-dwx-97hupz/warehouse/tablespace/managed/hive/tpch.db/lineitem'TBLPROPERTIES
('bucketing_version'='2','transactional'='true','transactional_properties'='default','transient_lastDdlTime'='1686741574'){code}
Iceberg query
{code:java}
CREATE TABLE lineitem LIKE tpch.lineitem
STORED BY ICEBERG;{code}
Error
{code:java}
Error while compiling statement: FAILED: Execution Error, return code 40000
from org.apache.hadoop.hive.ql.ddl.DDLTask. MetaException(message:The table
must be stored using an ACID compliant format (such as ORC):
tpch_ioytc.lineitem)
INFO : Compiling
command(queryId=hive_20230614191434_298d5e35-3ac9-4b6b-bf4f-132e8b4ad265):
create table line like tpch.lineitem stored by iceberg
INFO : Semantic Analysis Completed (retrial = false)
INFO : Created Hive schema: Schema(fieldSchemas:null, properties:null)
INFO : Completed compiling
command(queryId=hive_20230614191434_298d5e35-3ac9-4b6b-bf4f-132e8b4ad265); Time
taken: 0.03 seconds
INFO : Executing
command(queryId=hive_20230614191434_298d5e35-3ac9-4b6b-bf4f-132e8b4ad265):
create table line like tpch.lineitem stored by iceberg
INFO : Starting task [Stage-0:DDL] in serial mode
ERROR : Failed
org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:The
table must be stored using an ACID compliant format (such as ORC):
tpch_ioytc.line)
at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:1384)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:1389)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.ql.ddl.table.create.like.CreateTableLikeOperation.execute(CreateTableLikeOperation.java:88)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.ddl.DDLTask.execute(DDLTask.java:84)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:213)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:105)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Executor.launchTask(Executor.java:360)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Executor.launchTasks(Executor.java:333)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Executor.runTasks(Executor.java:250)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Executor.execute(Executor.java:111)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:810)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:547)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:541)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.ql.reexec.ReExecDriver.run(ReExecDriver.java:166)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hive.service.cli.operation.SQLOperation.runQuery(SQLOperation.java:235)
~[hive-service-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hive.service.cli.operation.SQLOperation.access$700(SQLOperation.java:92)
~[hive-service-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hive.service.cli.operation.SQLOperation$BackgroundWork$1.run(SQLOperation.java:340)
~[hive-service-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
at javax.security.auth.Subject.doAs(Subject.java:423) ~[?:?]
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1899)
~[hadoop-common-3.1.1.7.2.16.0-287.jar:?]
at
org.apache.hive.service.cli.operation.SQLOperation$BackgroundWork.run(SQLOperation.java:360)
~[hive-service-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
~[?:?]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
~[?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: org.apache.hadoop.hive.metastore.api.MetaException: The table must
be stored using an ACID compliant format (such as ORC): tpch_ioytc.line
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$create_table_req_result$create_table_req_resultStandardScheme.read(ThriftHiveMetastore.java)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$create_table_req_result$create_table_req_resultStandardScheme.read(ThriftHiveMetastore.java)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$create_table_req_result.read(ThriftHiveMetastore.java)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:88)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_create_table_req(ThriftHiveMetastore.java:2143)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.create_table_req(ThriftHiveMetastore.java:2130)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.create_table(HiveMetaStoreClient.java:4461)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.create_table(SessionHiveMetaStoreClient.java:180)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:1403)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:1373)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:1364)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at jdk.internal.reflect.GeneratedMethodAccessor299.invoke(Unknown
Source) ~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:216)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at com.sun.proxy.$Proxy56.createTable(Unknown Source) ~[?:?]
at jdk.internal.reflect.GeneratedMethodAccessor299.invoke(Unknown
Source) ~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient$SynchronizedHandler.invoke(HiveMetaStoreClient.java:4365)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at com.sun.proxy.$Proxy56.createTable(Unknown Source) ~[?:?]
at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:1373)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
... 27 more
ERROR : DDLTask failed, DDL Operation: class
org.apache.hadoop.hive.ql.ddl.table.create.like.CreateTableLikeOperation
org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:The
table must be stored using an ACID compliant format (such as ORC):
tpch_ioytc.line)
at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:1384)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:1389)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.ql.ddl.table.create.like.CreateTableLikeOperation.execute(CreateTableLikeOperation.java:88)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.ddl.DDLTask.execute(DDLTask.java:84)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:213)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:105)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Executor.launchTask(Executor.java:360)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Executor.launchTasks(Executor.java:333)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Executor.runTasks(Executor.java:250)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Executor.execute(Executor.java:111)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:810)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:547)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:541)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.ql.reexec.ReExecDriver.run(ReExecDriver.java:166)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hive.service.cli.operation.SQLOperation.runQuery(SQLOperation.java:235)
~[hive-service-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hive.service.cli.operation.SQLOperation.access$700(SQLOperation.java:92)
~[hive-service-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hive.service.cli.operation.SQLOperation$BackgroundWork$1.run(SQLOperation.java:340)
~[hive-service-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
at javax.security.auth.Subject.doAs(Subject.java:423) ~[?:?]
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1899)
~[hadoop-common-3.1.1.7.2.16.0-287.jar:?]
at
org.apache.hive.service.cli.operation.SQLOperation$BackgroundWork.run(SQLOperation.java:360)
~[hive-service-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
~[?:?]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
~[?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: org.apache.hadoop.hive.metastore.api.MetaException: The table must
be stored using an ACID compliant format (such as ORC): tpch_ioytc.line
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$create_table_req_result$create_table_req_resultStandardScheme.read(ThriftHiveMetastore.java)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$create_table_req_result$create_table_req_resultStandardScheme.read(ThriftHiveMetastore.java)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$create_table_req_result.read(ThriftHiveMetastore.java)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:88)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_create_table_req(ThriftHiveMetastore.java:2143)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.create_table_req(ThriftHiveMetastore.java:2130)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.create_table(HiveMetaStoreClient.java:4461)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.create_table(SessionHiveMetaStoreClient.java:180)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:1403)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:1373)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient.createTable(HiveMetaStoreClient.java:1364)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at jdk.internal.reflect.GeneratedMethodAccessor299.invoke(Unknown
Source) ~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:216)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at com.sun.proxy.$Proxy56.createTable(Unknown Source) ~[?:?]
at jdk.internal.reflect.GeneratedMethodAccessor299.invoke(Unknown
Source) ~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.apache.hadoop.hive.metastore.HiveMetaStoreClient$SynchronizedHandler.invoke(HiveMetaStoreClient.java:4365)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
at com.sun.proxy.$Proxy56.createTable(Unknown Source) ~[?:?]
at org.apache.hadoop.hive.ql.metadata.Hive.createTable(Hive.java:1373)
~[hive-exec-3.1.3000.2023.0.15.0-153.jar:3.1.3000.2023.0.15.0-153]
... 27 more
ERROR : FAILED: Execution Error, return code 40000 from
org.apache.hadoop.hive.ql.ddl.DDLTask. MetaException(message:The table must be
stored using an ACID compliant format (such as ORC): tpch_ioytc.line)
INFO : Completed executing
command(queryId=hive_20230614191434_298d5e35-3ac9-4b6b-bf4f-132e8b4ad265); Time
taken: 0.023 seconds
INFO : OK{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)