phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ankitsinghal <...@git.apache.org>
Subject [GitHub] phoenix issue #295: PHOENIX-4579: Add a config to conditionally create Phoen...
Date Tue, 03 Apr 2018 17:41:37 GMT
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.



---

Mime
View raw message