Samuel Merritt ccf0758ef1 Add ring-builder analyzer.
This is a tool to help developers quantify changes to the ring
builder. It takes a scenario (JSON file) describing the builder's
basic parameters (part_power, replicas, etc.) and a number of
"rounds", where each round is a set of operations to perform on the
builder. For each round, the operations are applied, and then the
builder is rebalanced until it reaches a steady state.

The idea is that a developer observes the ring builder behaving
suboptimally, writes a scenario to reproduce the behavior, modifies
the ring builder to fix it, and references the scenario with the
commit so that others can see that things have improved.

I decided to write this after writing my fourth or fifth hacky one-off
script to reproduce some bad behavior in the ring builder.

Change-Id: I114242748368f142304aab90a6d99c1337bced4c
2015-07-02 08:16:03 -07:00
..
2015-04-14 00:52:17 -07:00
2014-09-13 09:48:14 +02:00
2014-06-19 10:18:34 -07:00
2014-02-20 16:15:48 +08:00
2010-07-12 17:03:45 -05:00
2012-10-23 14:48:59 -05:00
2015-06-03 14:13:14 +01:00
2015-04-14 00:52:17 -07:00
2014-06-19 10:18:34 -07:00
2015-07-02 08:16:03 -07:00
2010-07-12 17:03:45 -05:00