This is an automated email from the ASF dual-hosted git repository.

sivabalan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hudi.git


The following commit(s) were added to refs/heads/master by this push:
     new 2506c0fd2c [HUDI-4875] Fix NoSuchTableException when dropping 
temporary view after applied HoodieSparkSessionExtension in Spark 3.2 (#6709)
2506c0fd2c is described below

commit 2506c0fd2ce9865e778e6f2f80ddd9da7c7fc861
Author: dohongdayi <[email protected]>
AuthorDate: Tue Sep 20 23:44:51 2022 +0800

    [HUDI-4875] Fix NoSuchTableException when dropping temporary view after 
applied HoodieSparkSessionExtension in Spark 3.2 (#6709)
---
 .../spark/sql/hudi/analysis/HoodieAnalysis.scala   |  4 ++--
 .../org/apache/spark/sql/hudi/TestDropTable.scala  | 23 +++++++++++++++++++++-
 2 files changed, 24 insertions(+), 3 deletions(-)

diff --git 
a/hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/analysis/HoodieAnalysis.scala
 
b/hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/analysis/HoodieAnalysis.scala
index ecc5d4a901..c8add03098 100644
--- 
a/hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/analysis/HoodieAnalysis.scala
+++ 
b/hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/analysis/HoodieAnalysis.scala
@@ -581,9 +581,9 @@ case class HoodiePostAnalysisRule(sparkSession: 
SparkSession) extends Rule[Logic
         if sparkAdapter.isHoodieTable(table) =>
         CreateHoodieTableCommand(table, ignoreIfExists)
       // Rewrite the DropTableCommand to DropHoodieTableCommand
-      case DropTableCommand(tableName, ifExists, isView, purge)
+      case DropTableCommand(tableName, ifExists, false, purge)
         if sparkAdapter.isHoodieTable(tableName, sparkSession) =>
-        DropHoodieTableCommand(tableName, ifExists, isView, purge)
+        DropHoodieTableCommand(tableName, ifExists, false, purge)
       // Rewrite the AlterTableDropPartitionCommand to 
AlterHoodieTableDropPartitionCommand
       case AlterTableDropPartitionCommand(tableName, specs, ifExists, purge, 
retainData)
         if sparkAdapter.isHoodieTable(tableName, sparkSession) =>
diff --git 
a/hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/TestDropTable.scala
 
b/hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/TestDropTable.scala
index 1beb78e27e..4470712e02 100644
--- 
a/hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/TestDropTable.scala
+++ 
b/hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/TestDropTable.scala
@@ -314,7 +314,6 @@ class TestDropTable extends HoodieSparkSqlTestBase {
     }
   }
 
-
   test("Drop an MANAGED table which path is lost.") {
     val tableName = generateTableName
     spark.sql(
@@ -341,6 +340,28 @@ class TestDropTable extends HoodieSparkSqlTestBase {
     checkAnswer("show tables")()
   }
 
+  test("Drop local temporary view should not fail") {
+    val viewName = generateTableName
+    spark.sql(
+      s"""
+         |create temporary view $viewName as
+         | select 1
+         |""".stripMargin)
+
+    spark.sql(s"drop view $viewName")
+  }
+
+  test("Drop global temporary view should not fail") {
+    val viewName = generateTableName
+    spark.sql(
+      s"""
+         |create global temporary view $viewName as
+         | select 1
+         |""".stripMargin)
+
+    spark.sql(s"drop view global_temp.$viewName")
+  }
+
   private def alterSerdeProperties(sessionCatalog: SessionCatalog, tableIdt: 
TableIdentifier,
     newProperties: Map[String, String]): Unit = {
     val catalogTable = spark.sessionState.catalog.getTableMetadata(tableIdt)

Reply via email to