anchor.diff:  %% misc. messages
   handle_info (ping_ring_nodes,State=#state{ring=Ring}) ->
       erlang:send_after(?INTERVAL,self(),ping_ring_nodes),
  +
  +    %% use the same ring we already have, just ping nodes again
       handle_cast({update_ring,Ring},State);
   
  -handle_info ({actually_update_ring,Ring},State) ->
  -    {noreply,update_ring(State,Ring)};
  +handle_info (clear_update_tick,State) ->
  +    {noreply,State#state{update_tick=false}};
   
   handle_info (_,State) ->
       {noreply,State}.
  
positive.code: 
  %% update the ring state, also update nodes and partitions
  update_ring (State,Ring) ->
      NodeState=update_nodes(State#state{ring=Ring}),
      NewState=update_partitions(NodeState),
      rev_state(NewState).
  
  
negative.code:                   partitions=[],
                    nodes=[],
                    services=[],
                    update_tick=false
                  },
  
      %% start the server
  