Subtle issues with configuring bitcask sync and merge intervals

Daniel Abrahamsson daniel.abrahamsson at klarna.com
Sat Jan 31 05:29:53 EST 2015


Hi,

I just wanted to share some experiences configuring Riak, in case some one
else would bump into the same issues.

Bitcask has a sync_strategy option and a merge_check_interval option. The
first one is for forcing Bitcask to sync to disk and the second one is to
ask Bitcask to check if files could be merged. Setting any of these to an
interval less or equal to riak_kv.vnode_inactivity_timeout (defaults to 60
seconds) will have the unexpected effect of making Riak unable to perform
handoffs.

This is due to that a vnode has to be inactive (not receive any messages)
for vnode_inactivity_timeout milliseconds before it shuts down and starts
handoff. The merge check and sync options are implemented as messages being
sent to the vnode, and thus setting these values too low will prevent the
vnode from ever becoming inactive.

This applies to Riak 1.3.x, 1.4.x and riak 2.0.x. I have filed a pull
request documenting this at https://github.com/basho/basho_docs/pull/1511

//Daniel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20150131/87ec2157/attachment-0002.html>


More information about the riak-users mailing list