phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Taylor (JIRA)" <j...@apache.org>
Subject [jira] [Created] (PHOENIX-3534) Support multi region SYSTEM.CATALOG table
Date Thu, 15 Dec 2016 01:20:58 GMT
James Taylor created PHOENIX-3534:
-------------------------------------

             Summary: Support multi region SYSTEM.CATALOG table
                 Key: PHOENIX-3534
                 URL: https://issues.apache.org/jira/browse/PHOENIX-3534
             Project: Phoenix
          Issue Type: Bug
            Reporter: James Taylor


Currently Phoenix requires that the SYSTEM.CATALOG table is single region based on the server-side
row locks being held for operations that impact a table and all of it's views. For example,
adding/removing a column from a base table pushes this change to all views.

As an alternative to making the SYSTEM.CATALOG transactional (PHOENIX-2431), when a new table
is created we can do a lazy cleanup  of any rows that may be left over from a failed DDL call
(kudos to [~lhofhansl] for coming up with this idea). To implement this efficiently, we'd
need to also do PHOENIX-2051 so that we can efficiently find derived views.

The implementation would rely on an optimistic concurrency model based on checking our sequence
numbers for each table/view before/after updating. Each table/view row would be individually
locked for their change (metadata for a view or table cannot span regions due to our split
policy), with the sequence number being incremented under lock and then returned to the client.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message