anchor.diff:                      N ->
                           N
                   end,
  -            case get_candidates(Members, MaxNumOfNodes, []) of
  -                {ok, Candidates} ->
  -                    lists:member(erlang:node(), Candidates);
  -                not_found ->
  -                    false
  -            end;
  +            is_candidates(Members, MaxNumOfNodes, []);
           _ ->
               false
       end.
  
positive.code: 
  %% @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) ->
      Acc_1 = case rpc:call(Node, leo_object_storage_api, stats, [], ?DEF_REQ_TIMEOUT) of
                  {ok, []} ->
                      Acc;
  
negative.code: 
                      case (ActiveSizeRatio =< (ThresholdActiveSizeRatio + ActiveSizeRatioDiff)) of
                          true ->
                              [{Node, ?ST_IDLING}|Acc];
                          false ->
                              case rpc:call(Node, leo_storage_api, compact, [status], ?DEF_REQ_TIMEOUT) of
                                  {ok, #compaction_stats{status = ?ST_RUNNING}} ->
                                      [{Node, ?ST_RUNNING}|Acc];
                                  _ ->
                                      Acc
                              end
  