anchor.diff:  
               Flushed0 = maps:without(maps:keys(Filtered), KIF),
               NewFT = maps:fold(fun(K, _V, Acc) ->
  -                maps:put(K, Timestamp, Acc)
  +                maps:put(K, FlushTimer, Acc)
               end, FT, Flushed0),
   
               {Filtered, NewFT, Flushed0};
  
positive.code:     cached_keys_to_flush = #{} :: cached_keys(),
      keys_in_flush = #{} :: keys_in_flush(),
      keys_to_inactivate = #{} :: cached_keys(),
      keys_to_expire = #{} :: #{key() => {erlang:timestamp(), non_neg_integer()}}, % @TODO VFS-7014 switch to unified time API
      flush_times = #{} :: #{key() => erlang:timestamp()}, % @TODO VFS-7014 switch to unified time API
      requests_ref = undefined :: undefined | reference(),
      flush_timer :: undefined | reference(),
      inactivate_timer :: undefined | reference(),
  
negative.code:     datastore_cache:inactivate(ToInactivate2),
      State2 = handle_ha_inactivate(ToInactivate2, State),
      State3 = State2#state{keys_to_inactivate = ExcludeMap,
          flush_countdown_timers = maps:with(Exclude, FT)},
  
      LT2 = maps:filter(fun(_K, {_, TimerInstance}) ->
          countdown_timer:is_expired(TimerInstance)
      end, LT),
  
      case maps:size(ToExpire2) + maps:size(State3#state.keys_to_inactivate) == 0 orelse OldTimer =/= undefined of
          true ->
              State3#state{link_tokens = LT2, keys_to_expire = ToExpire2};
          _ ->
              Timer = erlang:send_after(timer:seconds(ExpireMaxTime), self(), inactivate),
              State3#state{link_tokens = LT2, keys_to_expire = ToExpire2, inactivate_timer = Timer}
      end.
  
  