anchor.diff:  
   %% @doc Retrieve candidate nodes of data-compaction
   %% @private
  -get_candidates([],_,[]) ->
  -    not_found;
  -get_candidates([],_,Acc) ->
  -    {ok, lists:reverse(Acc)};
  -get_candidates(_, MaxNumOfNodes, Acc) when MaxNumOfNodes == erlang:length(Acc) ->
  -    {ok, lists:reverse(Acc)};
  -get_candidates([#member{node = Node}|Rest], MaxNumOfNodes, Acc) ->
  +is_candidates([],_,[]) ->
  +    false;
  +is_candidates([],_,Acc) ->
  +    is_candidates_1(lists:reverse(Acc));
  +is_candidates(_, MaxNumOfNodes, Acc) when MaxNumOfNodes == erlang:length(Acc) ->
  +    is_candidates_1(lists:reverse(Acc));
  +is_candidates([#member{node = Node}|Rest], MaxNumOfNodes, Acc) ->
       Acc_1 = case rpc:call(Node, leo_object_storage_api, stats, [], ?DEF_REQ_TIMEOUT) of
                   {ok, []} ->
                       Acc;
  
positive.code:                 _ ->
                      Acc
              end,
      get_candidates(Rest, MaxNumOfNodes, Acc_1).
  
negative.code:                     N ->
                          N
                  end,
              is_candidates(Members, MaxNumOfNodes, []);
          _ ->
              false
      end.
  