[
https://issues.apache.org/jira/browse/HIVE-28903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated HIVE-28903:
----------------------------------
Labels: pull-request-available (was: )
> Skip deleting archived path when drop partition/table
> -----------------------------------------------------
>
> Key: HIVE-28903
> URL: https://issues.apache.org/jira/browse/HIVE-28903
> Project: Hive
> Issue Type: Bug
> Components: Standalone Metastore
> Reporter: Wechar
> Assignee: Wechar
> Priority: Major
> Labels: pull-request-available
>
> Hadoop archived path is not supported to be delete, when dropping archived
> partition, it would drop partition metadata successfully but throws error
> when trying to delete partition path:
> {code:bash}
> 2025-04-12T04:02:14,401 ERROR [Metastore-Handler-Pool: Thread-1947]:
> metastore.RetryingHMSHandler (RetryingHMSHandler.java:invokeInternal(148)) -
> MetaException(message:Got exception: java.lang.IllegalArgumentException Wrong
> FS:
> har://hdfs-hadoop100:8020/user/hive/warehouse/tbl/dt=2025-01-01/data.har/region=us,
> expected: hdfs://hadoop100:8020)
> at
> org.apache.hadoop.hive.metastore.utils.MetaStoreUtils.throwMetaException(MetaStoreUtils.java:194)
> at
> org.apache.hadoop.hive.metastore.HiveMetaStoreFsImpl.deleteDir(HiveMetaStoreFsImpl.java:43)
> at
> org.apache.hadoop.hive.metastore.Warehouse.deleteDir(Warehouse.java:470)
> at
> org.apache.hadoop.hive.metastore.HMSHandler.drop_partitions_req(HMSHandler.java:5429)
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at
> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:91)
> at
> org.apache.hadoop.hive.metastore.AbstractHMSHandlerProxy.invoke(AbstractHMSHandlerProxy.java:82)
> at com.sun.proxy.$Proxy27.drop_partitions_req(Unknown Source)
> at
> org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$drop_partitions_req.getResult(ThriftHiveMetastore.java:21569)
> at
> org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$drop_partitions_req.getResult(ThriftHiveMetastore.java:21548)
> at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
> at
> org.apache.hadoop.hive.metastore.TUGIBasedProcessor$1.run(TUGIBasedProcessor.java:111)
> at
> org.apache.hadoop.hive.metastore.TUGIBasedProcessor$1.run(TUGIBasedProcessor.java:107)
> at java.base/java.security.AccessController.doPrivileged(Native
> Method)
> at java.base/javax.security.auth.Subject.doAs(Subject.java:423)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1899)
> at
> org.apache.hadoop.hive.metastore.TUGIBasedProcessor.process(TUGIBasedProcessor.java:119)
> at
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:250)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:829)
> {code}
> And when drop table with archived partitions, it also throws error:
> {code:bash}
> 2025-04-12T04:09:37,847 ERROR [Metastore-Handler-Pool: Thread-1955]:
> metastore.HMSHandler (HMSHandler.java:deleteDataExcludeCmroot(3182)) - Failed
> to delete directory:
> har://hdfs-hadoop100:8020/user/hive/warehouse/tbl/dt=2025-01-01/data.har/region=sg
> Got exception: java.lang.IllegalArgumentException Wrong FS:
> har://hdfs-hadoop100:8020/user/hive/warehouse/tbl/dt=2025-01-01/data.har/region=sg,
> expected: hdfs://hadoop100:8020
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)