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

Enis Soztutar commented on HBASE-11511:
---------------------------------------

Thanks Stack for taking a look. 
bq. That is ok? What if an edit after the start flush edit was added?
Good point. We writelock the updatesLock, then start the mvcc transaction, so 
it should be the case that sync() and sync(trx) should be the same thing I 
guess. But let me change it to be plain old sync() to be failure-proof. 
bq. ... or are we still dealing with failure at this point?
Indeed. The block above is a catch block for catching an ignoring any exception 
from writing the abort marker to WAL. The call to wal.abortCacheFlush() should 
still happen in the outer block, resulting in DroppedSnapshotException. 

> Write flush events to WAL
> -------------------------
>
>                 Key: HBASE-11511
>                 URL: https://issues.apache.org/jira/browse/HBASE-11511
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>         Attachments: hbase-11511_v1.patch, hbase-11511_v1.patch, 
> hbase-11511_v2.patch
>
>
> We used to write COMPLETE_FLUSH event to WAL until it got removed in 0.96 in 
> issue HBASE-7329. 
> For secondary region replicas, it is important to share the data files with 
> the primary region. So we should reintroduce the flush wal markers so that 
> the secondary region replicas can pick up the newly flushed files from the 
> WAL and start serving data from those. 
> A design doc which explains the context a bit better can be found in 
> HBASE-11183. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to