[ https://issues.apache.org/jira/browse/HBASE-14017?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14612766#comment-14612766 ]
Matteo Bertozzi edited comment on HBASE-14017 at 7/3/15 2:25 AM: ----------------------------------------------------------------- it does not make any difference, we are under synchronized. we check for isLocked() so that tryLock will always lock successfully, not the best looking thing ever but correct anyway [~stack] the difference between what we have and your proposal is that we don't have to do the extra release lock in case of zk-lock failure was (Author: mbertozzi): it does not make any difference, we are under synchronized. we check for isLocked() so that tryLock will always lock successfully, not the best looking thing ever but correct anyway [~stack] > Procedure v2 - MasterProcedureQueue fix concurrency issue on table queue > deletion > --------------------------------------------------------------------------------- > > Key: HBASE-14017 > URL: https://issues.apache.org/jira/browse/HBASE-14017 > Project: HBase > Issue Type: Sub-task > Components: proc-v2 > Affects Versions: 2.0.0, 1.2.0, 1.1.0.1 > Reporter: Matteo Bertozzi > Assignee: Matteo Bertozzi > Priority: Blocker > Fix For: 2.0.0, 1.2.0, 1.1.2 > > Attachments: HBASE-14017-v0.patch > > > [~syuanjiang] found a concurrecy issue in the procedure queue delete where we > don't have an exclusive lock before deleting the table > {noformat} > Thread 1: Create table is running - tryWrite() acquire the lock, before set > wlock=true; > Thread 2: markTableAsDeleted see the queue empty and wlock= false > Thread 1: set wlock=true; too late > Thread 2: delete the queue > Thread 1: never able to release the lock > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)