hbase-issues mailing list archives

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

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

stack commented on HBASE-10926:

Should the subprocedure be in the regionserver package since that is what it is working against?

This is probably your just picking up the pattern from snapshots but why this:

+  private final FlushTableSubprocedurePool taskManager;

How does a task manager become a pool?

Do the new classes have to be public?  Can they be package private?

Should +public class MasterFlushTableProcedureManager extends MasterProcedureManager { be
in the master package?  And RegionServerProcedureManager in RS package?

This is interesting.  Probably should add a short circuit for this in:

+    // We need to run the subprocedure even if we have no relevant regions.  The coordinator
+    // expects participation in the procedure and without sending message the master procedure
+    // will hang and fail.

No need of a test?

Whatever Matteo said.

This is nice work Jerry.  Thanks for using Procedure.

Separate, could we do a revamp of the naming of Procedure participants now it has been around
a while (it is all private so should be safe)?  ForeignException, ProcedureMember always have
me scrambling to read class and package doc because trouble figuring their roles. Should rethrowException
be rethrowIfException?

> 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
> Let's provide a distributed table flush for general use.

This message was sent by Atlassian JIRA

View raw message