You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by Thanh Do <th...@cs.wisc.edu> on 2013/07/08 20:22:29 UTC

flushing memstore: background or foreground?

hi all,

As far as I understand, there are two ways
that a memstore flush is triggered.
The first one is via MemstoreFlusher thread,
and this is a background work for sure.

Second, a client can trigger a flush by using
flushRegion API. It seems to me that this API
is executed synchronously, meaning the memstore
flush in this case is essentially a foreground workload,
in the sense that it requires one IPC handler to execute
the request and the handler only returns when
the flush is complete.

Am I correct here?

Thanks for your clarification.

Thanh

Re: flushing memstore: background or foreground?

Posted by Ted Yu <yu...@gmail.com>.
Going through the code in trunk, I think your observation is right.

On Mon, Jul 8, 2013 at 11:22 AM, Thanh Do <th...@cs.wisc.edu> wrote:

> hi all,
>
> As far as I understand, there are two ways
> that a memstore flush is triggered.
> The first one is via MemstoreFlusher thread,
> and this is a background work for sure.
>
> Second, a client can trigger a flush by using
> flushRegion API. It seems to me that this API
> is executed synchronously, meaning the memstore
> flush in this case is essentially a foreground workload,
> in the sense that it requires one IPC handler to execute
> the request and the handler only returns when
> the flush is complete.
>
> Am I correct here?
>
> Thanks for your clarification.
>
> Thanh
>