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

Jerry He commented on HBASE-10926:
----------------------------------

Also, regarding any behavior change.
The original behavior is this:
   Inside HBaseAdmin, we loop through each region with its region server, and a 
call is made to the region server directly for a flush.
   If any region is moved or not available while in the loop, we will log the 
NotServingRegionException, but continue on the next one.
The behavior with the distributed procedure:
   On the master side, we will collect the list of online regions with their 
region servers. The region servers will be the participating members.
   On the region server side, each member will again get its list of the online 
regions for the table, and flush the regions.
   There could be a race condition when the region moved in between master's 
server list and region server flush tasks. We may miss some regions.
   This miss is similar to the original NotServingRegionException.  But we 
should have a much smaller window to miss in the distributed case.
   Any error during flush will be thrown as foreign exception.

> Use global procedure to flush table memstore cache
> --------------------------------------------------
>
>                 Key: HBASE-10926
>                 URL: https://issues.apache.org/jira/browse/HBASE-10926
>             Project: HBase
>          Issue Type: Improvement
>          Components: Admin
>    Affects Versions: 0.96.2, 0.98.1
>            Reporter: Jerry He
>            Assignee: Jerry He
>             Fix For: 0.99.0
>
>         Attachments: HBASE-10926-trunk-v1.patch
>
>
> Currently, user can trigger table flush through hbase shell or HBaseAdmin 
> API.  To flush the table cache, each region server hosting the regions is 
> contacted and flushed sequentially, which is less efficient.
> In HBase snapshot global procedure is used to coordinate and flush the 
> regions in a distributed way.
> Let's provide a distributed table flush for general use.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to