[ https://issues.apache.org/jira/browse/PHOENIX-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17899774#comment-17899774 ]
guluo commented on PHOENIX-7466: -------------------------------- And i also found that Spark can access phoenix table with schema. ```scala // if phoenix is TEST_SCHEMA.TABLE, we can access it df = spark.sqlContext.read.format("phoenix") .options(Map("table" -> "TEST_SCHME.TABLE", "zkUrl" -> "phoenix-server:2181")).load; df.show ``` > [phoenix-connector] spark with authorization enabled cannot access phoenix > tables without schema > ------------------------------------------------------------------------------------------------ > > Key: PHOENIX-7466 > URL: https://issues.apache.org/jira/browse/PHOENIX-7466 > Project: Phoenix > Issue Type: Bug > Components: connectors > Reporter: guluo > Priority: Major > > When spark enabled authorization, Spark cannot access phoenix tables without > schema. > Assuming we use userA to operate Spark, and userA has access to the default > namespace on hbase > When Spark enabled authorization by Kyuubi Spark AuthZ Plugin, and spark > access phoenix tables by the following way. > df = spark.sqlContext.read.format("phoenix") > .options(Map("table" -> "Table1", "zkUrl" -> "phoenix-server:2181")).load; > This phoenix table doesnot specify schema, So the authorization service > cannot get the database name of this table (database is null), So it think > that we are accessing an unauthorized database and denies access. > I'm not sure if it must be a problem with phoenix-connector. > But my solution is as follows. > When the accessed Phoenix table does not have a schema, I convert it to > default.table in PhoenixTable. -- This message was sent by Atlassian Jira (v8.20.10#820010)