paimon
paimon copied to clipboard
[Bug] "show table extended like" sql is not supported
Search before asking
- [X] I searched in the issues and found nothing similar.
Paimon version
0.8.1
Compute Engine
spark
Minimal reproduce step
show table extended like 'paimon_order_pt_tag' PARTITION (pt='20240701')
24/07/05 23:34:50 ERROR SparkDriverRest: pt is not a valid partition column in table `hive_metastore`.`bigdata`.`paimon_order_pt_tag`.
org.apache.spark.sql.AnalysisException: pt is not a valid partition column in table `hive_metastore`.`bigdata`.`paimon_order_pt_tag`.
at org.apache.spark.sql.errors.QueryCompilationErrors$.invalidPartitionColumnKeyInTableError(QueryCompilationErrors.scala:2432)
at org.apache.spark.sql.util.PartitioningUtils$.$anonfun$normalizePartitionSpec$3(PartitioningUtils.scala:78)
at scala.Option.getOrElse(Option.scala:189)
at org.apache.spark.sql.util.PartitioningUtils$.$anonfun$normalizePartitionSpec$1(PartitioningUtils.scala:78)
at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:286)
at scala.collection.Iterator.foreach(Iterator.scala:943)
at scala.collection.Iterator.foreach$(Iterator.scala:943)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1431)
at scala.collection.IterableLike.foreach(IterableLike.scala:74)
at scala.collection.IterableLike.foreach$(IterableLike.scala:73)
at scala.collection.AbstractIterable.foreach(Iterable.scala:56)
at scala.collection.TraversableLike.map(TraversableLike.scala:286)
at scala.collection.TraversableLike.map$(TraversableLike.scala:279)
at scala.collection.AbstractTraversable.map(Traversable.scala:108)
at org.apache.spark.sql.util.PartitioningUtils$.normalizePartitionSpec(PartitioningUtils.scala:76)
at org.apache.spark.sql.execution.command.ShowTablesCommand.run(tables.scala:911)
at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult$lzycompute(commands.scala:75)
at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult(commands.scala:73)
at org.apache.spark.sql.execution.command.ExecutedCommandExec.executeCollect(commands.scala:84)
at org.apache.spark.sql.execution.QueryExecution$$anonfun$eagerlyExecuteCommands$1.$anonfun$applyOrElse$1(QueryExecution.scala:107)
at org.apache.spark.sql.execution.SQLExecution$.$anonfun$withNewExecutionId$6(SQLExecution.scala:125)
at org.apache.spark.sql.execution.SQLExecution$.withSQLConfPropagated(SQLExecution.scala:201)
at org.apache.spark.sql.execution.SQLExecution$.$anonfun$withNewExecutionId$1(SQLExecution.scala:108)
at org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:900)
at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:66)
at org.apache.spark.sql.execution.QueryExecution$$anonfun$eagerlyExecuteCommands$1.applyOrElse(QueryExecution.scala:107)
at org.apache.spark.sql.execution.QueryExecution$$anonfun$eagerlyExecuteCommands$1.applyOrElse(QueryExecution.scala:98)
at org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformDownWithPruning$1(TreeNode.scala:461)
at org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(origin.scala:76)
at org.apache.spark.sql.catalyst.trees.TreeNode.transformDownWithPruning(TreeNode.scala:461)
at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.org$apache$spark$sql$catalyst$plans$logical$AnalysisHelper$$super$transformDownWithPruning(LogicalPlan.scala:32)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.transformDownWithPruning(AnalysisHelper.scala:267)
at org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.transformDownWithPruning$(AnalysisHelper.scala:263)
at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.transformDownWithPruning(LogicalPlan.scala:32)
at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.transformDownWithPruning(LogicalPlan.scala:32)
at org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:437)
at org.apache.spark.sql.execution.QueryExecution.eagerlyExecuteCommands(QueryExecution.scala:98)
at org.apache.spark.sql.execution.QueryExecution.commandExecuted$lzycompute(QueryExecution.scala:85)
at org.apache.spark.sql.execution.QueryExecution.commandExecuted(QueryExecution.scala:83)
at org.apache.spark.sql.Dataset.<init>(Dataset.scala:220)
at org.apache.spark.sql.Dataset$.$anonfun$ofRows$2(Dataset.scala:100)
What doesn't meet your expectations?
Execution failure
Anything else?
No response
Are you willing to submit a PR?
- [ ] I'm willing to submit a PR!
@melin I tested your case in class org.apache.paimon.spark.SparkReadITCase of branch master, and the issue cannot be reproduced.
@Test
public void testCreateTableAsTmp() {
spark.sql("CREATE TABLE paimon_order_pt_tag (\n" +
" id INT,\n" +
" name string,\n" +
" pt string\n" +
") USING paimon\n" +
"PARTITIONED BY (pt)\n" +
"tblproperties (\n" +
" 'primary-key' = 'id, pt',\n" +
" 'bucket'= '-1'\n" +
");");
spark.sql("insert OVERWRITE paimon_order_pt_tag PARTITION(pt='20240701') select 3 as id, 'zhangsan' as name;");
spark.sql("CALL sys.create_tag(table => 'paimon_order_pt_tag', tag => 'tag-20240701');");
spark.sql("show table extended like 'paimon_order_pt_tag' PARTITION (pt='20240701');").show();
/* output:
+---------+-------------------+-----------+--------------------+
|namespace| tableName|isTemporary| information|
+---------+-------------------+-----------+--------------------+
| default|paimon_order_pt_tag| false|Partition Values:...|
+---------+-------------------+-----------+--------------------+
* */
}
Maybe you can try newer version.