anchor.diff:                  min_interval = ?DEF_SYNC_MIN_INTERVAL :: non_neg_integer(),
                   max_interval = ?DEF_SYNC_MAX_INTERVAL :: non_neg_integer(),
                   timestamp = 0 :: non_neg_integer(),
  -                checksum = {-1,-1} :: {integer(), integer()}
  +                checksum = {-1, -1} :: {integer(), integer()}
                  }).
   
  --record(ring_conf, {
  -                    id = 0 :: non_neg_integer(),
  +-record(ring_conf, {id = 0 :: non_neg_integer(),
                       ring_size = 0  :: non_neg_integer(),
                       group_size = 0  :: non_neg_integer(),
                       group_id = 0  :: non_neg_integer(),
  
positive.code: 
  -define(DEF_NUM_OF_DIV, 32).
  
  -record(state, {
                  id :: atom(),
                  cur  = #ring_info{} :: #ring_info{},
                  prev = #ring_info{} :: #ring_info{},
                  num_of_replicas = 0 :: non_neg_integer(),
  
negative.code:             {error, ring_not_found};
          #?RING{node = Node} ->
              redundancies_2(TableInfo, VNodeId_Org, VNodeId_Hop,
                             NumOfReplicas, NumOfRAs, Members, Node)
      end.
  
  %% @private
  redundancies_2(TableInfo, VNodeId_Org, VNodeId_Hop, NumOfReplicas, NumOfRAs, Members, Node) ->
      case get_redundancies(Members, Node, []) of
          not_found ->
              {error, ?ERROR_COULD_NOT_GET_REDUNDANCIES};
          {Node, RackIdL} ->
              redundancies_3(TableInfo, NumOfReplicas - 1, NumOfRAs, Members, VNodeId_Hop,
                             #redundancies{id = VNodeId_Org,
                                           vnode_id_to = VNodeId_Hop,
                                           temp_nodes = [Node],
                                           temp_level_2 = RackIdL,
                                           nodes = [#redundant_node{node = Node}]})
      end.
  
  %% @private
  redundancies_3(_TableInfo,_,_NumOfRAs,_Members, -1,_R) ->
      {error,  invalid_vnode};
  redundancies_3(_TableInfo, 0,_NumOfRAs,_Members,_VNodeId, #redundancies{nodes = Acc} = R) ->
      {ok, R#redundancies{temp_nodes = [],
                          temp_level_2 = [],
                          nodes = lists:reverse(Acc)}};
  redundancies_3(TableInfo, NumOfReplicas, NumOfRAs, Members, VNodeId_0, R) ->
      case get_node_by_vnode_id(TableInfo, VNodeId_0) of
          {ok, VNodeId_1} ->
              case leo_cluster_tbl_ring:lookup(TableInfo, VNodeId_1) of
  