[ 
https://issues.apache.org/jira/browse/HBASE-16519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15449087#comment-15449087
 ] 

Matteo Bertozzi commented on HBASE-16519:
-----------------------------------------

the latch is a noop if the client is 2.0, if the client is a 1.x it behaves in 
a sync way. like we do already for create/delete/enable/disable.

those procedures are already in 1.x, and the client code relies on the fact 
that the server behavior is sync. so we need the latch for compatibility

> Procedure v2 - Avoid sync wait on DDLs operation
> ------------------------------------------------
>
>                 Key: HBASE-16519
>                 URL: https://issues.apache.org/jira/browse/HBASE-16519
>             Project: HBase
>          Issue Type: Sub-task
>          Components: master, proc-v2
>    Affects Versions: 2.0.0
>            Reporter: Matteo Bertozzi
>            Assignee: Matteo Bertozzi
>             Fix For: 2.0.0
>
>         Attachments: HBASE-16519-v0.patch
>
>
> Some operation ModifyColumnFamily, AddDeleteColumnFamily, DeleteColumnFamily, 
> ModifyTable, TruncateTable are still synchronous on the master side. with a 
> wait until the operation completes before returning. 
> this was done to keep the sync behavior for old client. but instead of using 
> the procLatch which recognize the client version and decide if the operation 
> should be sync or not it just always wait. making the client side proc fault 
> tolerance ineffective.
> also the add/delete/modifyColumnFamily operation does not seems to follow the 
> Async() naming in master. and the comment claim to be async but everyone uses 
> them as sync. (this is something from HBASE-13538)



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

Reply via email to