anchor.diff:  
   -spec make_ring(ring_type(), pos_integer()) -> ok.
   make_ring(Type, Size) ->
  -    %if ring exists kill all
  +    %if ring exists kill all   
  +    set_recon_method(bloom), 
       case Type of
           random -> 
               admin:add_node([{first}]),
  
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:     end.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% DB Generation
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  % @doc Inserts a list of keys replicated into the ring
  -spec insert_random_db([?RT:key()], [db_parameter()]) -> ok.
  insert_random_db(Keys, Params) ->
      FType = proplists:get_value(ftype, Params, update),
      FProb = proplists:get_value(fprob, Params, 50),    
      lists:foreach(
        fun(Key) ->
                RepKeys = ?RT:get_replica_keys(Key),
                %insert error?
                EKey = case FProb >= randoms:rand_uniform(1, 100) of
                           true -> util:randomelem(RepKeys);
                           _ -> null
                       end,
                %insert regen error
                {EType, WKeys} = case EKey =/= null of
                                     true ->
                                         EEType = case FType of 
                                                      mixed -> 
                                                          case randoms:rand_uniform(1, 2) of
                                                              1 -> update;
                                                              _ -> regen
                                                          end;
                                                      _ -> FType
                                                  end,
                                         {EEType, 
                                          case EEType of
                                              regen -> [X || X <- RepKeys, X =/= EKey];
                                              _ -> RepKeys
                                          end};
                                     _ -> {FType, RepKeys}
                                 end,
                %write replica group
                lists:foreach(
                  fun(RKey) ->
                          DBEntry = db_entry:new(RKey, "2", 2),
                          api_dht_raw:unreliable_lookup(RKey, 
                                                        {set_key_entry, comm:this(), DBEntry}),
                          receive {set_key_entry_reply, _} -> ok end
                  end,
                  WKeys),
                %insert update error
                if EType =:= update andalso EKey =/= null ->
                       Msg = {set_key_entry, comm:this(), db_entry:new(EKey, "old", 1)},
                       api_dht_raw:unreliable_lookup(EKey, Msg),
                       receive {set_key_entry_reply, _} -> ok end;
                   true -> ok
                end     
        end, 
        Keys),
      ok.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% Analysis Functions
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% Local Functions
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  get_node_list() ->
      mgmt_server:node_list(),
      receive
          {get_list_response, N} -> N
          after 2000 ->
              log:log(error,"[ ST ] Timeout getting node list from mgmt server"),
              throw('mgmt_server_timeout')
      end.
  
  get_symmetric_ids(NodeCount) ->
  