[
https://issues.apache.org/jira/browse/HBASE-25391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Wellington Chevreuil updated HBASE-25391:
-----------------------------------------
Release Note:
This adds a new StoreFlushContext implementation, PersistedStoreFlushContext,
together with a new StoreFlusher implementation, PersistedEngineStoreFlusher.
As the memstore flush process is actually comprised of an initial file
creations, followed by the actual write and finally a "commit" action, these
two should be always be used together to guarantee a successful flush that
doesn't involve creating temp files that get renamed later at the "commit"
stage. By setting PersistedEngineStoreFlusher as the StoreFlusher
implementation at "hbase.hstore.defaultengine.storeflusher.class"
configuration, memstore flushes will create the resulting hfile directly in the
store dir, instead of using a temp dir. Complementing the flush,
PersistedStoreFlushContext, configured by
hbase.regionserver.store.flush.context.class, assumes committed store files
were written directly in the store dir, and therefore, doesn't perform a rename
from tmp dir into the store dir.
Note: This requires
was:This adds a new StoreFlushContext implementation,
PersistedStoreFlushContext, together with a new StoreFlusher implementation,
PersistedEngineStoreFlusher. As the memstore flush process is actually
comprised of an initial file creations, followed by the actual write and
finally a "commit" action, these two should be always be used together to
guarantee a successful flush that doesn't involve creating temp files that get
renamed later at the "commit" stage. By setting PersistedEngineStoreFlusher as
the StoreFlusher implementation at
"hbase.hstore.defaultengine.storeflusher.class" configuration, memstore flushes
will create the resulting hfile directly in the store dir, instead of using a
temp dir. Complementing the flush, PersistedStoreFlushContext, configured by
hbase.regionserver.store.flush.context.class, assumes committed store files
were written directly in the store dir, and therefore, doesn't perform a rename
from tmp dir into the store dir.
> Flush directly into data directory, skip rename when committing flush
> ---------------------------------------------------------------------
>
> Key: HBASE-25391
> URL: https://issues.apache.org/jira/browse/HBASE-25391
> Project: HBase
> Issue Type: Sub-task
> Reporter: Tak-Lon (Stephen) Wu
> Assignee: Wellington Chevreuil
> Priority: Major
>
> {color:#000000}When flushing memstore snapshot to HFile, we write it directly
> to the data directory.{color}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)