anchor.diff: -%  Copyright 2008 Konrad-Zuse-Zentrum fr Informationstechnik Berlin
  +%  Copyright 2008, 2009 Konrad-Zuse-Zentrum fr Informationstechnik Berlin
   %
   %   Licensed under the Apache License, Version 2.0 (the "License");
   %   you may not use this file except in compliance with the License.
  
positive.code: add_nodes_loop(0, _) ->
      ok;
  add_nodes_loop(Count, Delay) ->
      supervisor:start_child(main_sup, {randoms:getRandomId(),
  				      {cs_sup_or, start_link, []},
  				      permanent,
  				      brutal_kill,
  				      worker,
  				      []}),
      %timer:sleep(Delay),
      add_nodes_loop(Count - 1, Delay).
  %% userdevguide-end admin:add_nodes
  
negative.code: -spec(check_ring/0 :: () -> {error, string()} | ok).
  check_ring() ->
      erlang:put(instance_id, process_dictionary:find_group(cs_node)),
      Nodes = statistics:get_ring_details(),
      case lists:foldl(fun check_ring_foldl/2, first, Nodes) of
          {error, Reason} ->
              {error, Reason};
          _X ->
              ok
      end.
  
  check_ring_foldl({ok, Node}, first) ->
      get_id(hd(node_details:succlist(Node)));
  