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

ASF GitHub Bot commented on PHOENIX-4579:
-----------------------------------------

Github user ankitsinghal commented on the issue:

    https://github.com/apache/phoenix/pull/295
  
    bq. As of now, when the server gets connected to for the first time i.e. no 
SYSTEM tables exist, we call
    ensureSystemTablesMigratedToSystemNamespace, but this just creates the 
HBase SYSTEM namespace and returns without migrating tables since they haven't 
been created yet. However, later on when we do create other SYSTEM tables, we 
aren't migrating them to the SYSTEM namespace right away.
    
    As per the current implementation, if there is namespace mapping enabled 
and no SYSTEM table exists then CREATE TABLE should automatically create SYSTEM 
tables in SYSTEM namespace. There should not be a need of migrating them. It 
used to work like this, is it not the case now?
    
    bq. Now, as per the current design, whenever a second client with 
NS-mapping enabled connects to the server, we will migrate these SYSTEM tables 
to the SYSTEM namespace when ensureSystemTablesMigratedToSystemNamespace is 
called within init (with my PR, this will be called inside ensureTableCreated 
when the table is SYSTEM.CATALOG and NS-mapping is enabled, instead of in 
init). My question is, shouldn't we map SYSTEM tables to the SYSTEM namespace 
immediately after creating them?
    First connection will be useless, if as per the new design, SYSTEM tables 
are not getting created in the correct namespace.



> Add a config to conditionally create Phoenix meta tables on first client 
> connection
> -----------------------------------------------------------------------------------
>
>                 Key: PHOENIX-4579
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4579
>             Project: Phoenix
>          Issue Type: New Feature
>            Reporter: Mujtaba Chohan
>            Assignee: Chinmay Kulkarni
>            Priority: Major
>         Attachments: PHOENIX-4579.patch
>
>
> Currently we create/modify Phoenix meta tables on first client connection. 
> Adding a property to make it configurable (with default true as it is 
> currently implemented).
> With this property set to false, it will avoid lockstep upgrade requirement 
> for all clients when changing meta properties using PHOENIX-4575 as this 
> property can be flipped back on once all the clients are upgraded.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to