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

Matteo Bertozzi commented on HBASE-10926:
-----------------------------------------

{quote}Only one flush request for the same table at a time.
But I do want to allow different tables to go through. Will think more on how 
to accomplish this. Any suggestion from you is welcome.{quote}
In the snapshot we used a simple map <TableName, IsInProgress> and when you 
exec the procedure, you check the map. If is in and is in progress you throw an 
exception "flush on the same table already running" otherwise you set the 
In-progress state and go on. and isDone() is using the table name to lookup the 
state from the map. I guess this is the easy way, maybe someone else have a 
better idea.

> 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