yaooqinn commented on code in PR #5678:
URL: https://github.com/apache/kyuubi/pull/5678#discussion_r1392049240
##########
extensions/spark/kyuubi-spark-authz/src/test/scala/org/apache/kyuubi/plugin/spark/authz/ranger/RangerSparkExtensionSuite.scala:
##########
@@ -1296,4 +1296,37 @@ class HiveCatalogRangerSparkExtensionSuite extends
RangerSparkExtensionSuite {
}
}
}
+
+ test("[KYUUBI #5677][AUTHZ] Typeof expression miss column information") {
+ val db1 = defaultDb
+ val table1 = "table1"
+ withSingleCallEnabled {
+ withCleanTmpResources(Seq((s"$db1.$table1", "table"))) {
+ doAs(
+ admin,
+ sql(
+ s"""
+ |CREATE TABLE IF NOT EXISTS $db1.$table1(
+ |id int,
+ |scope int,
+ |day string)
+ |""".stripMargin))
+ doAs(admin, sql(s"INSERT INTO $db1.$table1 SELECT 1, 2, 'TONY'"))
+ interceptContains[AccessControlException](
+ doAs(someone, sql(s"SELECT typeof(id), typeof(day) FROM
$db1.$table1").show()))(
Review Comment:
do not use show
##########
extensions/spark/kyuubi-spark-authz/src/test/scala/org/apache/kyuubi/plugin/spark/authz/ranger/RangerSparkExtensionSuite.scala:
##########
@@ -1296,4 +1296,37 @@ class HiveCatalogRangerSparkExtensionSuite extends
RangerSparkExtensionSuite {
}
}
}
+
+ test("[KYUUBI #5677][AUTHZ] Typeof expression miss column information") {
+ val db1 = defaultDb
+ val table1 = "table1"
+ withSingleCallEnabled {
+ withCleanTmpResources(Seq((s"$db1.$table1", "table"))) {
+ doAs(
+ admin,
+ sql(
+ s"""
+ |CREATE TABLE IF NOT EXISTS $db1.$table1(
+ |id int,
+ |scope int,
+ |day string)
+ |""".stripMargin))
+ doAs(admin, sql(s"INSERT INTO $db1.$table1 SELECT 1, 2, 'TONY'"))
+ interceptContains[AccessControlException](
+ doAs(someone, sql(s"SELECT typeof(id), typeof(day) FROM
$db1.$table1").show()))(
+ s"does not have [select] privilege on
[$db1/$table1/id,$db1/$table1/day]")
+ interceptContains[AccessControlException](
+ doAs(
+ someone,
+ sql(
+ s"""
+ |SELECT
+ |typeof(cast(id as string)),
+ |typeof(substring(day, 1, 3))
+ |FROM $db1.$table1""".stripMargin).show()))(
+ s"does not have [select] privilege on
[$db1/$table1/id,$db1/$table1/day]")
+ doAs(admin, sql(s"SELECT typeof(id), typeof(day) FROM
$db1.$table1").show())
Review Comment:
SELECT typeof(typeof)
typeof typeof(id + age)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]