anchor.diff:  %   limitations under the License.
   
   %% @author Maik Lange <lakedaimon300@googlemail.com>
  -%% @doc Aministrative helper functions for replica repair
  +%% @doc Administrative helper functions for replica repair evaluation
   %% @version $Id:  $
   -module(rr_admin).
   
   -export([make_ring/2, 
  +         fill_ring/3,
  +         start_sync/0,
            set_recon_method/1]).
   
  +-export([test_upd/0,
  +         test_regen/0,
  +         test_man/0]). %TEST SETS
  +
   -include("scalaris.hrl").
   
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   %% TYPES
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   
  --type ring_type() :: symmetric | random.
  +-type ring_type()    :: symmetric | random.
  +-type failure_type() :: update | regen | mixed.
  +-type db_type()      :: wiki | random.
  +-type db_parameter() :: {ftype, failure_type()} |
  +                        {fprob, 0..100} |            %failure probability
  +                        {distribution, db_generator:distribution()}.
  +
  +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +%% Eval Quick Start
  +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +
  +-spec test_upd() -> ok.
  +test_upd() ->
  +    make_ring(symmetric, 10),
  +    fill_ring(random, 10000, []),
  +    ok.
  +
  +-spec test_regen() -> ok.
  +test_regen() ->
  +    make_ring(symmetric, 10),
  +    fill_ring(random, 10000, [{ftype, regen}]),
  +    start_sync(),
  +    ok.
  +
  +-spec test_man() -> ok.
  +test_man() ->
  +    make_ring(symmetric, 10),
  +    fill_ring(random, 10000, [{ftype, regen}]),
  +    ok.
   
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   %% API Functions
  
positive.code:         symmetric ->
              Ids = get_symmetric_ids(Size),
              admin:add_node([{first}, {{dht_node, id}, hd(Ids)}]),
              [admin:add_node_at_id(Id) || Id <- Ids]
      end,
      wait_for_stable_ring(),
      ok.
  
  -spec set_recon_method(rep_upd_recon:method()) -> ok | {error, term()}.
  set_recon_method(Method) ->
      config:write(rep_update_recon_method, Method),
      RM = config:read(rep_update_recon_method),
      case RM =:= Method of
          true -> ok;
  
negative.code: 
  -spec make_ring(ring_type(), pos_integer()) -> ok.
  make_ring(Type, Size) ->
      %if ring exists kill all   
      set_recon_method(bloom), 
      case Type of
          random -> 
              admin:add_node([{first}]),
  