phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chinmay Kulkarni (JIRA)" <j...@apache.org>
Subject [jira] [Created] (PHOENIX-4684) Creation of SYSTEM tables should not depend on client-side properties
Date Mon, 02 Apr 2018 21:11:00 GMT
Chinmay Kulkarni created PHOENIX-4684:
-----------------------------------------

             Summary: Creation of SYSTEM tables should not depend on client-side properties
                 Key: PHOENIX-4684
                 URL: https://issues.apache.org/jira/browse/PHOENIX-4684
             Project: Phoenix
          Issue Type: Bug
            Reporter: Chinmay Kulkarni


Currently, when the server receives its first connection, SYSTEM.CATALOG or SYSTEM:CATALOG
(and other system tables) are created depending on whether namespace mapping is enabled or
not on the connecting client. This can lead to potential bugs and unexpected behavior. For
example:

Let's say *namespace mapping is disabled on the server*, but the first connection the server
gets is from a *client where namespace mapping is enabled*. In this case, we will create the
HBase physical table SYSTEM:CATALOG and then this client fails with an _SQLException_ for
"Inconsistent namespace mapping properties".

Now, when a client that has consistent namespace mapping properties with this server i.e.
ns-mapping disabled, tries to connect to this server, that client will get the same exception
from the CQSI._init_ method since SYSTEM:CATALOG exists already. This client will thus never
be able to get a connection to the server even though it is potentially compatible with the
server.

Thus, system table creation should be purely driven by server-side properties and not be dependent
on the properties of the first client that connects to the server.




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

Mime
View raw message