[
https://issues.apache.org/jira/browse/HBASE-5494?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13267689#comment-13267689
]
Phabricator commented on HBASE-5494:
------------------------------------
tedyu has commented on the revision "[jira] [HBASE-5494] [89-fb] Table-level
locks for schema changing operations.".
I only reviewed part of the patch.
Would this feature be refined in 0.89-fb branch before being ported to Apache
HBase trunk ?
INLINE COMMENTS
src/main/java/org/apache/hadoop/hbase/HConstants.java:98 Schema changes would
always involve master.
'master.' can be omitted.
src/main/java/org/apache/hadoop/hbase/HConstants.java:108 Is this value big
enough in cluster testing ?
src/main/java/org/apache/hadoop/hbase/TableLockTimeoutException.java:2 No
year is needed.
src/main/java/org/apache/hadoop/hbase/master/HMaster.java:1353 This lock is
used to prevent two concurrent table creation attempts.
tryLockTable() is more desirable here.
src/main/java/org/apache/hadoop/hbase/master/HMaster.java:1310 Can we add
tryLockTable() ?
It would be useful for the non-winning thread to exit quickly.
src/main/java/org/apache/hadoop/hbase/master/TableLockManager.java:2 No year,
please.
src/main/java/org/apache/hadoop/hbase/master/TableLockManager.java:47 Should
Bytes.toStringBinary() be used here ?
src/main/java/org/apache/hadoop/hbase/master/TableLockManager.java:53 Add 'be
' before 'released'
src/main/java/org/apache/hadoop/hbase/master/TableLockManager.java:137 What
if lock release fails ?
src/main/java/org/apache/hadoop/hbase/master/TableLockManager.java:27 Can you
tell me which zookeeper branch provides this lock ?
In http://svn.apache.org/repos/asf/zookeeper/trunk, I don't seem to find this
class.
REVISION DETAIL
https://reviews.facebook.net/D2997
> Introduce a zk hosted table-wide read/write lock so only one table operation
> at a time
> --------------------------------------------------------------------------------------
>
> Key: HBASE-5494
> URL: https://issues.apache.org/jira/browse/HBASE-5494
> Project: HBase
> Issue Type: Improvement
> Reporter: stack
> Attachments: D2997.3.patch
>
>
> I saw this facility over in the accumulo code base.
> Currently we just try to sort out the mess when splits come in during an
> online schema edit; somehow we figure we can figure all possible region
> transition combinations and make the right call.
> We could try and narrow the number of combinations by taking out a zk table
> lock when doing table operations.
> For example, on split or merge, we could take a read-only lock meaning the
> table can't be disabled while these are running.
> We could then take a write only lock if we want to ensure the table doesn't
> change while disabling or enabling process is happening.
> Shouldn't be too hard to add.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira