anchor.diff:      Name = riak_core_ring:cluster_name(Ring),
       Members = riak_core_ring:all_members(Ring),
       RootMembers = riak_ensemble_manager:get_members(root),
  -    Known = riak_ensemble_manager:rget(members, []),
  +    Known = riak_ensemble_manager:cluster(),
       Need = Members -- Known,
  -    _ = [riak_ensemble_manager:join(node(), Member) || Member <- Need],
  +    L = [riak_ensemble_manager:join(node(), Member) || Member <- Need,
  +                                                       Member =/= node()],
  +    Failed = [Result || Result <- L,
  +                        Result =/= ok],
  +    (Failed =:= []) orelse reset_ring_id(self()),
   
       RootNodes = [Node || {_, Node} <- RootMembers],
       RootAdd = Members -- RootNodes,
  
positive.code:     end.
  
  bootstrap_root_ensemble(Ring) ->
      %% TODO: Need to make bootstrapping safe even if claimant dies/has state deleted
      bootstrap_members(Ring),
      ok.
  
  
negative.code:     State2 = tick(State),
      {noreply, State2};
  
  handle_info(reset_ring_id, State) ->
      State2 = State#state{last_ring_id=undefined},
      {noreply, State2};
  
  handle_info(_Info, State) ->
      {noreply, State}.
  
  