basho/bitcask — pull request #146 by evanmcc (2014-03-12 19:09:49+00:00)
Title: pulse tweaks for multifold

WIP: do not merge.

This is to give us a place to discuss various fixes. It'll need to be retargeted against develop when the merge delete fixes land. Stuff in this fix:

1. Add an option to keep the files around if you need to. This is nice for analyzing a counter with lots of opens and closes.
2. Sanitize pids and refs in the events relation so that you can paste it into another buffer more easily to work with it.
3. Make it so that long fold opens don't complain the first time around.
4. Fix some import warnings for eq/2.
5. This one is the most contentious, I suspect. Get rid of the fold filtering stuff, because I read it as potentially filtering out some real errors. The world that the fold sees should be static, even if there are puts or deletes that happen while it is going on. Anything should rightly be an error. This isn't true in the case where someone passes -1, -1 as their fold criteria, as their fold effectively goes back in time (or really, epoch), but we don't model that in the pulse test because it isn't used in riak.

Ideally, I'd like to add folds that take time, so we can better test get/put/fold interleavings, but I think that that's another PR, if it even makes sense to do.