phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <>
Subject [jira] [Commented] (PHOENIX-3757) System mutex table not being created in SYSTEM namespace when namespace mapping is enabled
Date Tue, 24 Oct 2017 21:18:00 GMT


ASF GitHub Bot commented on PHOENIX-3757:

Github user karanmehta93 commented on a diff in the pull request:
    --- Diff: phoenix-core/src/main/java/org/apache/phoenix/coprocessor/
    @@ -95,6 +97,7 @@
         // Key is the SYSTEM.CATALOG timestamp for the version and value is the version string.
         private static final NavigableMap<Long, String> TIMESTAMP_VERSION_MAP = new
         static {
    --- End diff --
    Nope, this one is not only for test. 
    When you acquire a lock on SYSMUTEX, the method requires you to pass in a server side
timestamp of SYSCAT table (Since it was meant for that earlier) and it checks if the current
timestamp is less than the MIN_SYSTEM_TABLE_TIMESTAMP before upgrading it.
    I can't use MIN_SYSTEM_TABLE_TIMESTAMP because then the code for `acquireUpgradeMutex()`
wont allow me to acquire the mutex lock.
    I use the same `UpgradeInProgressException` to prevent multiple clients migrating the
system tables together. I use this value in `UpgradeInProgressException` to change the error
message displayed to the user. 

> System mutex table not being created in SYSTEM namespace when namespace mapping is enabled
> ------------------------------------------------------------------------------------------
>                 Key: PHOENIX-3757
>                 URL:
>             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

This message was sent by Atlassian JIRA

View raw message