2i Durability

Brady Wetherington brady at bespincorp.com
Wed Oct 2 14:07:00 EDT 2013

Hi guys -

So I've got my early proof-of-concept work ready to go, everything is
looking and working well.

Of course, things really only get interesting when something breaks.

So that's my question - we know that Riak itself already has lots of
provisions for what happens if a node is down when writes are trying to
happen - we have the 'n' thing and we have vector clocks and AAE and all
sorts of other good stuff.

But what happens to 2i indexes? For 90% of what I'm doing, I don't care if
an index gets a little out-of-whack for a short while - it doesn't really
affect things. But for one particular part - billing - it does matter,
quite a bit.

I know that, in the case of someone's indexes getting all mangled, they can
rebuild them, node-by-node, using some command-line magic - I've even run
it myself as a test to make sure I know how to.

What kind of thing(s) can I do to ensure that my indices are not
out-of-whack before I run my big map-reduce billing job? Is there anything
shy of rebuilding the indexes for my entire cluster? Is there any way to do
just a 'partial' index rebuild?

Ideally, my billing job, when it runs, would do whatever index shenaniganry
it needed to, then do its thing. I would settle for just _detecting_ that
the indexes were busted and manual intervention required, but I'd certainly
prefer something where I could either detect that and then do a rebuild, or
just rebuild the indexes completely.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20131002/1f3f149d/attachment.html>

More information about the riak-users mailing list