[
https://issues.apache.org/jira/browse/PHOENIX-4579?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16412070#comment-16412070
]
ASF GitHub Bot commented on PHOENIX-4579:
-----------------------------------------
Github user ChinmaySKulkarni commented on the issue:
https://github.com/apache/phoenix/pull/295
@JamesRTaylor I'm trying to check if we can move the logic in the try block
in init to _ensureTableCreated_ and there seem to be a couple of hurdles while
doing so. We don't have access to the DO_NOT_UPGRADE property which is declared
to be private inside UpgradeUtil.java and we can't access its getter method
'isNoUpgradeSet' from _ensureTableCreated_ because we have properties of type
'ReadOnlyProps', not 'Properties' (I couldn't find any converter methods
between these instances). We need this property to decide whether or not to set
_setUpgradeRequired_ to true.
Also, we call _ensureSystemTablesMigratedToSystemNamespace_ inside this try
block in init and also have a check which basically throws an
InconsistentNamespaceMappingProperties exception if
phoenix.schema.mapSystemTablesToNamespace is false and SYSTEM:CATALOG still
exists. Now if we move all this logic to _ensureTableCreated_, we would have to
add extra checks inside this to make sure whether _ensureTableCreated_ is
called for SYSTEM.CATALOG or SYSTEM:CATALOG.
Because of this, I don't think it's possible to move all this to
_ensureTableCreated_.
> 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)