hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jerry He (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-10926) Use global procedure to flush table memstore cache
Date Tue, 29 Apr 2014 00:56:17 GMT

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

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

[~mbertozzi]
bq. The behavior change more is related to the failure case, if a RS is not-responding with
the procedure you fail the flush, while with the old method some of them got flushed.
Good point. Since the region servers are not in 'reached' state yet, nothing will proceed.
 
If they are in 'reached' state, but one of them fails to flush for whatever reason, we will
get 'some regions flushed, some not' case again.

bq. execProcedure() starts by resetting the done and call the flush procedure, but there is
nothing that prevent multiple calls of flush on the same table or different table.
Good catch as well.
My thinking was to rely on the 'procedure name' which is the table name to prevent another
flush request for the same table. 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.

> 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)

Mime
View raw message