anchor.diff:               ]
               }
       end,
  -    ets:delete(webhelpers_indexed_ring),
       EHtml.
   
   %% @doc Renders an indexed ring into ehtml.
  -%%      Precond: existing webhelpers_indexed_ring ets table with
  +%%      Precond: existing Ring from get_and_cache_ring/0 with
   %%      node_id -> index mapping.
   -spec renderIndexedRing(Node::statistics:ring_element()) -> html_type().
   renderIndexedRing({ok, Details}) ->
  
positive.code:                     undefined -> statistics:get_ring_details_neighbors(1); % get neighbors only
                      _         -> statistics:get_ring_details()
                  end,
              erlang:put(web_scalaris_ring, Ring);
          Ring -> ok
      end,
      Ring.
  
  -spec flush_ring_cache() -> ok.
  flush_ring_cache() ->
  
negative.code: -spec extract_ring_info2(RingE1::node_details:node_details(), RingE2::node_details:node_details())
          -> [{Label::string(), Value::string(), Known::boolean()}].
  extract_ring_info2(RingE1, RingE2) ->
      E1_MyId = node:id(node_details:get(RingE1, node)),
      E1_PredId = node:id(node_details:get(RingE1, pred)),
      E2_PredId = node:id(node_details:get(RingE2, pred)),
      E1_Diff = ?RT:get_range(E1_PredId, E1_MyId) * 100 / ?RT:n(),
      E1_MyIndexStr = case get_indexed_id_by_id(E1_MyId) of
                          undefined -> "";
                          E1_MyIndex -> integer_to_list(E1_MyIndex) ++ ": "
                      end,
      E1_Label = E1_MyIndexStr ++ node_details:get(RingE1, hostname) ++ " (" ++
                     integer_to_list(node_details:get(RingE1, load)) ++ ")",
      E1_Me_val = io_lib:format("~f", [E1_Diff]),
      case E1_MyId =:= E2_PredId of
          true -> [{E1_Label, E1_Me_val, true}];
          _ -> % add an "unknown" slice as there is another (but unknown) node:
              Diff2 = ?RT:get_range(E1_MyId, E2_PredId) * 100 / ?RT:n(),
              Unknown_val = io_lib:format("~f", [Diff2]),
              [{E1_Label, E1_Me_val, true}, {"unknown", Unknown_val, false}]
      end.
  