[ https://issues.apache.org/jira/browse/HBASE-19673?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16308763#comment-16308763 ]
Chia-Ping Tsai commented on HBASE-19673: ---------------------------------------- BufferedMutatorPeriodicFlush isn't in branch-2 so user need to modify their code to migrate from 1.x to 2.x. That does break our API compatibility. Could we introduce a util to help user to config the timer? {code:title=BufferedMutatorUtil.java} IA.Public public final class BufferedMutatorUtil { private BufferedMutatorUtil() {} public static setWriteBufferPeriodicFlush(BufferedMutator bm, long timeoutMs, long timerTickMs) { if (bm instanceof BufferedMutatorImpl) { ((BufferedMutatorImpl) bm).setWriteBufferPeriodicFlush(timeoutMs,timerTickMs); } else { throw new UnsupportedOperationException( "The BufferedMutator::setWriteBufferPeriodicFlush has not been implemented"); } } } {code} Also, we need to add the BufferedMutatorUtil to branch-2 and annotate it as deprecated. {code:title=BufferedMutatorUtil.java} @IA.Public @deprecated // use BufferedMutator instead public final class BufferedMutatorUtil { private BufferedMutatorUtil() {} public static setWriteBufferPeriodicFlush(BufferedMutator bm, long timeoutMs, long timerTickMs) { bm.setWriteBufferPeriodicFlush(timeoutMs,timerTickMs); } } {code} > Backport " Periodically ensure records are not buffered too long by > BufferedMutator" to branch-1 > ------------------------------------------------------------------------------------------------ > > Key: HBASE-19673 > URL: https://issues.apache.org/jira/browse/HBASE-19673 > Project: HBase > Issue Type: Improvement > Components: Client > Reporter: Niels Basjes > Assignee: Niels Basjes > Attachments: HBASE-19673.20171230-130631.branch-1.patch, > HBASE-19673.20171230-131955.branch-1.patch, > HBASE-19673.20171231-112539.branch-1.patch, > HBASE-19673.20180102-082937.branch-1.patch, > HBASE-19673.20180102-155006.branch-1.patch > > > In HBASE-19486 the feature was built to periodically flush the > BufferedMutator. > Because backwards compatibility is important in the 1.x branch some > refactoring is needed to make this work. > As requested by [~chia7712] this separate issue was created -- This message was sent by Atlassian JIRA (v6.4.14#64029)