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

stack commented on HBASE-11511:
-------------------------------

Before we would sync all outstanding edits.  Now when we flush we flush just 
the start flush tx?

-      if (wal != null && !shouldSyncLog()) wal.sync();
+      if (wal != null) {
+        try {
+          wal.sync(trxId); // ensure that flush marker is sync'ed
+        } catch (IOException ioe) {
+          LOG.warn("Unexpected exception while log.sync(), ignoring. 
Exception: "
+              + StringUtils.stringifyException(ioe));
+        }
+      }

That is ok?  What if an edit after the start flush edit was added?

Is this last line in the right location?  Should it be inside the bracket?

+        }
         wal.abortCacheFlush(this.getRegionInfo().getEncodedNameAsBytes());

... or are we still dealing with failure at this point?

Patch looks good otherwise.


> 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