phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-4579) Add a config to conditionally create Phoenix meta tables on first client connection
Date Wed, 04 Apr 2018 00:42:00 GMT

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

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

Github user JamesRTaylor commented on a diff in the pull request:

    https://github.com/apache/phoenix/pull/295#discussion_r179000414
  
    --- Diff: phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java
---
    @@ -2643,6 +2661,26 @@ public void upgradeSystemTables(final String url, final Properties
props) throws
                 metaConnection.setRunningUpgrade(true);
                 try {
                     metaConnection.createStatement().executeUpdate(QueryConstants.CREATE_TABLE_METADATA);
    +
    +                // HBase Namespace SYSTEM is created by {@link ensureSystemTablesMigratedToSystemNamespace(ReadOnlyProps)}
method
    +                // This statement will create its entry in SYSCAT table, so that GRANT/REVOKE
commands can work
    +                // with SYSTEM Namespace. (See PHOENIX-4227 https://issues.apache.org/jira/browse/PHOENIX-4227)
    +                if (SchemaUtil.isNamespaceMappingEnabled(PTableType.SYSTEM,
    +                  ConnectionQueryServicesImpl.this.getProps())) {
    --- End diff --
    
    If autoUpgrade is enabled, we don't want the user to have to run EXECUTE UPGRADE. Move
the creation of the namespace to ensureTableCreated if necessary (but keep the ensureSystemTablesMigratedToSystemNamespace
logic in upgradeSystemTables). Let's have a test for this too.
    
    I think it'd be better to have the acquireUpgradeMutex only in upgradeSystemTables so
we only do this once. We can acquire it before calling ensureSystemTablesMigratedToSystemNamespace.


> 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)

Mime
View raw message