anchor.diff:      CM = count_dbsize(CKey),
       %server starts sync
       api_dht_raw:unreliable_lookup(SKey, {?send_to_group_member, rrepair,
  -                                              {request_sync, Method, CKey}}),
  -    %waitForSyncRoundEnd(NodeKeys),
  -    waitForSyncRoundEnd([SKey, CKey]),
  +                                              {request_sync, Method, CKey, comm:this()}}),
  +    waitForSyncRoundEnd([SKey, CKey], true),
       %measure sync degree
       SONew = count_outdated(SKey),
       SMNew = count_dbsize(SKey),
  
positive.code: 
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  wait_until_true(DestKey, Request, ConFun, MaxWait) ->
      api_dht_raw:unreliable_lookup(DestKey, Request),
      Result = receive {get_state_response, R} -> ConFun(R) end,
      case Result of
          true -> true;
          false when MaxWait > 0 ->
              erlang:yield(),
              timer:sleep(10),
              wait_until_true(DestKey, Request, ConFun, MaxWait - 10);
          false when MaxWait =< 0 ->
              false
      end.
  
  session_ttl(Config) ->
  
negative.code: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  -spec startSyncRound(NodeKeys::[?RT:key()]) -> ok.
  startSyncRound(NodeKeys) ->
      lists:foreach(
        fun(X) ->
                Req = {?send_to_group_member, rrepair, {rr_trigger}},
                api_dht_raw:unreliable_lookup(X, Req)
        end,
        NodeKeys),
      ok.
  
  -spec waitForSyncRoundEnd(NodeKeys::[?RT:key()], RcvReqCompleteMsg::boolean()) -> ok.
  waitForSyncRoundEnd(NodeKeys, RcvReqCompleteMsg) ->
      RcvReqCompleteMsg andalso
          receive
              {request_sync_complete, _} -> true
          end,
      Req = {?send_to_group_member, rrepair,
             {get_state, comm:this(), [open_sessions, open_recon, open_resolve]}},
      util:wait_for(fun() -> wait_for_sync_round_end2(Req, NodeKeys) end, 100).
  