anchor.diff:                     %% check versions: if mismatch -> change status to abort
                      NewTLogEntry =
                          case tx_tlog:get_entry_version(TEntry)
  -                                =/= tx_tlog:get_entry_version(RTEntry) of
  +                                =:= tx_tlog:get_entry_version(RTEntry) of
                              true ->
  -                               tx_tlog:set_entry_status(RTEntry, {fail, abort});
  +                               Val = tx_tlog:get_entry_value(RTEntry),
  +                               tx_tlog:set_entry_value(TEntry, Val);
                              false ->
  -                               Val = tx_tlog:get_entry_value(RTEntry),
  -                               tx_tlog:set_entry_value(TEntry, Val)
  +                               tx_tlog:set_entry_status(RTEntry, {fail, abort})
                          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;
  -       TKey < RTKey ->
  -           merge_tlogs_iter(TTail, SortedRTLog, [TEntry | Acc]);
  -       true ->
  -           merge_tlogs_iter(SortedTLog, RTTail, [RTEntry | Acc])
  +           end
       end;
   merge_tlogs_iter([], [], Acc)                 -> lists:reverse(Acc);
   merge_tlogs_iter([], [_|_] = SortedRTLog, []) -> SortedRTLog;
  
positive.code: 
  %% @doc Helper to perform all operations on the TLog and generate list
  %%      of results.
  -spec do_reqs_on_tlog_iter(tx_tlog:tlog(), [request_on_key()], results(), EnDecode::boolean()) ->
                                    {tx_tlog:tlog(), results()}.
  do_reqs_on_tlog_iter(TLog, [], Acc, _EnDecode) ->
      {tlog_cleanup(TLog), lists:reverse(Acc)};
  do_reqs_on_tlog_iter(TLog, [Req | ReqTail], Acc, EnDecode) ->
      Key = req_get_key(Req),
      Entry = tx_tlog:find_entry_by_key(TLog, Key),
  
negative.code:                  Acc) ->
      TKey = tx_tlog:get_entry_key(TEntry),
      RTKey = tx_tlog:get_entry_key(RTEntry),
      if TKey < RTKey ->
             merge_tlogs_iter(TTail, SortedRTLog, [TEntry | Acc]);
         TKey > RTKey ->
             merge_tlogs_iter(SortedTLog, RTTail, [RTEntry | Acc]);
         true -> % TKey =:= RTKey ->
             %% key was in TLog, new entry is newer and contains value
             %% for read?
             case tx_tlog:get_entry_operation(TEntry) of
  