[
https://issues.apache.org/jira/browse/SPARK-38230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17637096#comment-17637096
]
Gabor Roczei commented on SPARK-38230:
--------------------------------------
Hi [~coalchan],
[Your pull request|https://github.com/apache/spark/pull/35549] has been
automatically closed by the github action, I would like to create a new pull
request based on yours and continue to work on this if you agree.
> InsertIntoHadoopFsRelationCommand unnecessarily fetches details of partitions
> in most cases
> -------------------------------------------------------------------------------------------
>
> Key: SPARK-38230
> URL: https://issues.apache.org/jira/browse/SPARK-38230
> Project: Spark
> Issue Type: Improvement
> Components: SQL
> Affects Versions: 3.0.2
> Reporter: Coal Chan
> Priority: Major
>
> In
> `org.apache.spark.sql.execution.datasources.InsertIntoHadoopFsRelationCommand`,
> `sparkSession.sessionState.catalog.listPartitions` will call method
> `org.apache.hadoop.hive.metastore.listPartitionsPsWithAuth` of hive metastore
> client, this method will produce multiple queries per partition on hive
> metastore db. So when you insert into a table which has too many
> partitions(ie: 10k), it will produce too many queries on hive metastore
> db(ie: n * 10k = 10nk), it puts a lot of strain on the database.
> In fact, it calls method `listPartitions` in order to get locations of
> partitions and get `customPartitionLocations`. But in most cases, we do not
> have custom partitions, we can just get partition names, so we can call
> method listPartitionNames.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]