anchor.diff:      Known = [{Idx, N} || {{kv, Idx, N}, _} <- Ensembles],
       Need = AllPL -- Known,
       io:format("All: ~p~nKnown ~p~nNeed: ~p~n", [AllPL, Known, Need]),
  -    [begin
  -         {PL, _} = chashbin:itr_pop(N, chashbin:exact_iterator(Idx, CHBin)),
  -         %% TODO: Make ensembles/peers use ensemble/peer as actual peer name so this is unneeded
  -         Peers = [{{kv, Idx, N, Idx2}, Node} || {Idx2, Node} <- PL],
  -         riak_ensemble_manager:create_ensemble({kv, Idx, N}, undefined, Peers,
  -                                               riak_kv_ensemble_backend, []),
  -         ok
  -     end || {Idx, N} <- Need],
  +    L = [begin
  +             {PL, _} = chashbin:itr_pop(N, chashbin:exact_iterator(Idx, CHBin)),
  +             %% TODO: Make ensembles/peers use ensemble/peer as actual peer name so this is unneeded
  +             Peers = [{{kv, Idx, N, Idx2}, Node} || {Idx2, Node} <- PL],
  +             riak_ensemble_manager:create_ensemble({kv, Idx, N}, undefined, Peers,
  +                                                   riak_kv_ensemble_backend, [])
  +         end || {Idx, N} <- Need],
  +    Failed = [Result || Result <- L,
  +                        Result =/= ok],
  +    (Failed =:= []) orelse schedule_retry(),
       ok.
  
positive.code: 
  handle_info(tick, State) ->
      State2 = tick(State),
      {noreply, State2};
  
  handle_info(_Info, State) ->
      {noreply, State}.
  
negative.code: %%%===================================================================
  
  schedule_tick() ->
      erlang:send_after(10000, self(), tick).
  
  schedule_retry() ->
      erlang:send_after(10000, self(), retry).
  
  tick(State=#state{last_ring_id=LastID}) ->
      case riak_core_ring_manager:get_ring_id() of
          LastID ->
              State;
          RingID ->
              maybe_bootstrap_ensembles(),
              State#state{last_ring_id=RingID}
      end.
  
  maybe_bootstrap_ensembles() ->
      {ok, Ring, CHBin} = riak_core_ring_manager:get_raw_ring_chashbin(),
      IsClaimant = (riak_core_ring:claimant(Ring) == node()),
      IsReady = riak_core_ring:ring_ready(Ring),
      case IsClaimant and IsReady of
  