[ https://issues.apache.org/jira/browse/HBASE-21721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16742753#comment-16742753 ]
stack commented on HBASE-21721: ------------------------------- [~Bo Cui] What version you looking at please? Please write out more your rationale. Thanks for digging in here. > reduce write#syncs() times > -------------------------- > > Key: HBASE-21721 > URL: https://issues.apache.org/jira/browse/HBASE-21721 > Project: HBase > Issue Type: Improvement > Affects Versions: 1.3.1, 2.1.1 > Reporter: Bo Cui > Priority: Major > > the number of write#syncs can be reduced by updating the > highestUnsyncedSequence: > before write#sync(), get the current highestUnsyncedSequence > after write#sync, highestSyncedSequence=highestUnsyncedSequence > > {code:title=FSHLog.java|borderStyle=solid} > // Some comments here > public void run() > { > long currentSequence; > while (!isInterrupted()) { > int syncCount = 0; > try { > while (true) { > ... > try { > Trace.addTimelineAnnotation("syncing writer"); > long unSyncedFlushSeq = highestUnsyncedSequence; > writer.sync(); > Trace.addTimelineAnnotation("writer synced"); > if( unSyncedFlushSeq > currentSequence ) currentSequence = > unSyncedFlushSeq; > currentSequence = updateHighestSyncedSequence(currentSequence); > } catch (IOException e) { > LOG.error("Error syncing, request close of WAL", e); > lastException = e; > } catch (Exception e) { > ... > } > } > {code} > Add code > long unSyncedFlushSeq = highestUnsyncedSequence; > if( unSyncedFlushSeq > currentSequence ) currentSequence = unSyncedFlushSeq; -- This message was sent by Atlassian JIRA (v7.6.3#76005)