Github user gatorsmile commented on a diff in the pull request:

    https://github.com/apache/spark/pull/18975#discussion_r136739990
  
    --- Diff: 
sql/hive/src/test/scala/org/apache/spark/sql/hive/InsertSuite.scala ---
    @@ -534,4 +534,132 @@ class InsertIntoHiveTableSuite extends QueryTest with 
TestHiveSingleton with Bef
           }
         }
       }
    +
    +  test("insert overwrite to dir from hive metastore table") {
    +    withTempDir { dir =>
    +      val path = dir.toURI.getPath
    +
    +      sql(s"INSERT OVERWRITE LOCAL DIRECTORY '${path}' SELECT * FROM src 
where key < 10")
    +
    +      sql(
    +        s"""
    +           |INSERT OVERWRITE LOCAL DIRECTORY '${path}'
    +           |STORED AS orc
    +           |SELECT * FROM src where key < 10
    +         """.stripMargin)
    +
    +      // use orc data source to check the data of path is right.
    +      withTempView("orc_source") {
    +        sql(
    +          s"""
    +             |CREATE TEMPORARY VIEW orc_source
    +             |USING org.apache.spark.sql.hive.orc
    +             |OPTIONS (
    +             |  PATH '${dir.getCanonicalPath}'
    +             |)
    +           """.stripMargin)
    +
    +        checkAnswer(
    +          sql("select * from orc_source"),
    +          sql("select * from src where key < 10").collect())
    +      }
    +    }
    +  }
    +
    +  test("insert overwrite to local dir from temp table") {
    +    withTempView("test_insert_table") {
    +      spark.range(10).selectExpr("id", "id AS 
str").createOrReplaceTempView("test_insert_table")
    +
    +      withTempDir { dir =>
    +        val path = dir.toURI.getPath
    +
    +        sql(
    +          s"""
    +             |INSERT OVERWRITE LOCAL DIRECTORY '${path}'
    +             |ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
    +             |SELECT * FROM test_insert_table
    +           """.stripMargin)
    +
    +        sql(
    +          s"""
    +             |INSERT OVERWRITE LOCAL DIRECTORY '${path}'
    +             |STORED AS orc
    +             |SELECT * FROM test_insert_table
    +           """.stripMargin)
    +
    +        // use orc data source to check the data of path is right.
    +        withTempView("orc_source") {
    +          sql(
    +            s"""
    +               |CREATE TEMPORARY VIEW orc_source
    +               |USING org.apache.spark.sql.hive.orc
    +               |OPTIONS (
    +               |  PATH '${dir.getCanonicalPath}'
    +               |)
    +             """.stripMargin)
    +
    +          checkAnswer(
    +            sql("select * from orc_source"),
    +            sql("select * from test_insert_table").collect())
    +        }
    +      }
    +    }
    +  }
    +
    +  test("insert overwrite to dir from temp table") {
    +    withTempView("test_insert_table") {
    +      spark.range(10).selectExpr("id", "id AS 
str").createOrReplaceTempView("test_insert_table")
    +
    +      withTempDir { dir =>
    +        val pathUri = dir.toURI
    +
    +        sql(
    +          s"""
    +             |INSERT OVERWRITE DIRECTORY '${pathUri}'
    +             |ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
    +             |SELECT * FROM test_insert_table
    +           """.stripMargin)
    +
    +        sql(
    +          s"""
    +             |INSERT OVERWRITE DIRECTORY '${pathUri}'
    +             |STORED AS orc
    +             |SELECT * FROM test_insert_table
    +           """.stripMargin)
    +
    +        // use orc data source to check the data of path is right.
    +        withTempView("orc_source") {
    +          sql(
    +            s"""
    +               |CREATE TEMPORARY VIEW orc_source
    +               |USING org.apache.spark.sql.hive.orc
    +               |OPTIONS (
    +               |  PATH '${dir.getCanonicalPath}'
    +               |)
    +             """.stripMargin)
    +
    +          checkAnswer(
    +            sql("select * from orc_source"),
    +            sql("select * from test_insert_table").collect())
    --- End diff --
    
    The same here


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to