You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Karan Mehta (JIRA)" <ji...@apache.org> on 2017/09/23 08:12:00 UTC

[jira] [Commented] (PHOENIX-4227) Row for "SYSTEM" schema is not created during ConnectionQueryServicesImpl init

    [ https://issues.apache.org/jira/browse/PHOENIX-4227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16177625#comment-16177625 ] 

Karan Mehta commented on PHOENIX-4227:
--------------------------------------

This is relevant to PHOENIX-672, For example if a statement tries to apply permissions to SYSTEM schema, it will fail because it will not be able to locate any schema with that name through the SYSTEM.CATALOG table. 

> Row for "SYSTEM" schema is not created during ConnectionQueryServicesImpl init 
> -------------------------------------------------------------------------------
>
>                 Key: PHOENIX-4227
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4227
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.12.0
>            Reporter: Karan Mehta
>
> For every new schema created through Phoenix, a row containing the schema name (with a 0x0 at the beginning and the end) is added to SYSTEM.CATALOG table. This is used for by other statements such as "USE SCHEMA" or "CREATE SCHEMA" to determine if the schema exists or not. 
> However when we turn on namespaces, SYSTEM tables are automatically migrated to SYSTEM namespace in HBase. However an SYSTEM.CATALOG entry with the row (\x0SYSTEM\x0) is not created. Thus other statements trying to use it might receive a SCHEMA_NOT_FOUND_EXCEPTION even though the schema exists in the file.
> A "CREATE SCHEMA SYSTEM" statement can create the corresponding row entry in the SYSCAT table. This JIRA is to fix this behaviour and make it consistent for all schemas across Phoenix.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)