[
https://issues.apache.org/jira/browse/HBASE-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14681544#comment-14681544
]
Enis Soztutar commented on HBASE-13212:
---------------------------------------
Patch looks good except one q. Matteo also +1'ed.
I think we need two follow ups though:
- Add some tests for NS creation and table creation to the IT test from
HBASE-13470.
- There is a dependency between table creation / deletion and NS creation /
deletion. Specifically, HMaster.createTable() calls
{{ensureNamespaceExists(namespace)}} which checks the NS to be available and
delete namespace checks whether there are no more tables in the namespace. The
current patch does not prevent the race conditions, since we do not acquire a
shared NS lock before the table create / delete operations. For example for
create table we should do this:
{code}
- obtain exclusive table lock
- obtain shared NS lock
- check NS exists.
- execute rest of create table
- release locks
{code}
> Procedure V2 - master Create/Modify/Delete namespace
> ----------------------------------------------------
>
> Key: HBASE-13212
> URL: https://issues.apache.org/jira/browse/HBASE-13212
> Project: HBase
> Issue Type: Sub-task
> Components: master
> Affects Versions: 2.0.0
> Reporter: Stephen Yuan Jiang
> Assignee: Stephen Yuan Jiang
> Labels: reliability
> Attachments: HBASE-13212.v1-master.patch, HBASE-13212.v2-master.patch
>
> Original Estimate: 168h
> Remaining Estimate: 168h
>
> master side, part of HBASE-12439
> starts up the procedure executor on the master
> and replaces the create/modify/delete namespace handlers with the procedure
> version.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)