[ https://issues.apache.org/jira/browse/PHOENIX-3757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16219445#comment-16219445 ]
ASF GitHub Bot commented on PHOENIX-3757: ----------------------------------------- Github user karanmehta93 commented on a diff in the pull request: https://github.com/apache/phoenix/pull/277#discussion_r146973010 --- Diff: phoenix-core/src/main/java/org/apache/phoenix/query/ConnectionQueryServicesImpl.java --- @@ -3086,12 +3103,18 @@ private void restoreFromSnapshot(String tableName, String snapshotName, } } - void ensureSystemTablesUpgraded(ReadOnlyProps props) + void ensureSystemTablesMigratedToSystemNamespace(ReadOnlyProps props) throws SQLException, IOException, IllegalArgumentException, InterruptedException { if (!SchemaUtil.isNamespaceMappingEnabled(PTableType.SYSTEM, props)) { return; } + + boolean acquiredMutexLock = false; + byte[] mutexRowKey = SchemaUtil.getTableKey(null, PhoenixDatabaseMetaData.SYSTEM_CATALOG_SCHEMA, + PhoenixDatabaseMetaData.SYSTEM_CATALOG_TABLE); + HTableInterface metatable = null; try (HBaseAdmin admin = getAdmin()) { - // Namespace-mapping is enabled at this point. + // SYSTEM namespace needs to be created via HBase API's because "CREATE SCHEMA" statement tries to write its metadata + // in SYSTEM:CATALOG table. Without SYSTEM namespace, SYSTEM:CATALOG table cannot be created. --- End diff -- Thanks! > System mutex table not being created in SYSTEM namespace when namespace > mapping is enabled > ------------------------------------------------------------------------------------------ > > Key: PHOENIX-3757 > URL: https://issues.apache.org/jira/browse/PHOENIX-3757 > Project: Phoenix > Issue Type: Bug > Reporter: Josh Elser > Assignee: Karan Mehta > Priority: Critical > Labels: namespaces > Fix For: 4.13.0 > > Attachments: PHOENIX-3757.001.patch, PHOENIX-3757.002.patch, > PHOENIX-3757.003.patch > > > Noticed this issue while writing a test for PHOENIX-3756: > The SYSTEM.MUTEX table is always created in the default namespace, even when > {{phoenix.schema.isNamespaceMappingEnabled=true}}. At a glance, it looks like > the logic for the other system tables isn't applied to the mutex table. -- This message was sent by Atlassian JIRA (v6.4.14#64029)