anchor.diff:  %%      of results.
   -spec do_reqs_on_tlog_iter(tx_tlog:tlog(), [request_on_key()], results()) ->
                                     {tx_tlog:tlog(), results()}.
  -do_reqs_on_tlog_iter(TLog, [], Acc) -> {TLog, lists:reverse(Acc)};
  +do_reqs_on_tlog_iter(TLog, [], Acc) ->
  +    {tlog_cleanup(TLog), lists:reverse(Acc)};
   do_reqs_on_tlog_iter(TLog, [Req | ReqTail], Acc) ->
       Key = req_get_key(Req),
       Entry = tx_tlog:find_entry_by_key(TLog, Key),
  
positive.code:     case TKey =:= req_get_key(Req) of
          true ->
              %% key is in TLog, rdht op not necessary
              case req_get_op(Req) of
                  rdht_tx_read ->
                      %% when operation is a read and TLog is optimized, we
                      %% need the op anyway to calculate the result entry.
                      %% Not yet activated:
                      %% first_req_per_key_not_in_tlog_iter
                      %%   (USTLog, RTail, [Req | Acc]);
                      first_req_per_key_not_in_tlog_iter(USTLog, RTail, Acc);
                  _ ->
                      first_req_per_key_not_in_tlog_iter(USTLog, RTail, Acc)
              end;
          false ->
              case TKey < req_get_key(Req) of
  
negative.code:                             =/= tx_tlog:get_entry_version(RTEntry) of
                              true ->
                                  tx_tlog:set_entry_status(RTEntry, {fail, abort});
                              false ->
                                  Val = tx_tlog:get_entry_value(RTEntry),
                                  tx_tlog:set_entry_value(TEntry, Val)
                          end,
                      merge_tlogs_iter(TTail, RTTail, [NewTLogEntry | Acc]);
                  _ ->
                      log:log(warn,
                              "Duplicate key in TLog merge should not happen ~p ~p", [TEntry, RTEntry]),
                      merge_tlogs_iter(TTail, RTTail, [ RTEntry | Acc])
              end;
          false ->
  