anchor.diff:      %% check all combinations of abort / prepared and the corresponding
       %% tx decisions
       %% modify DB and then do operations on the changed DB
  -    [abort_prepared(0, read_commit, [MC1, MC2, MC3, MC4],
  -                    calc_rc_outcome([MC1, MC2, MC3, MC4]))
  +    [ begin
  +          Key = init_new_db_key("abort_prepared_rc"),
  +          abort_prepared(Key, read_commit, [MC1, MC2, MC3, MC4],
  +                         calc_rc_outcome([MC1, MC2, MC3, MC4]))
  +      end
        || MC1 <- causes(), MC2 <- causes(),
           MC3 <- causes(), MC4 <- causes()],
       ok.
  
positive.code:      %% modify DB after work_phase, before validation
       %% write - modify - commit (rmc)
       [begin
            {TLog, _} =
                ?CS_API:process_request_list(?CS_API:new_tlog(),
                                             [{write, 0, "wmc"}]),
            Pattern = [MC1, MC2, MC3, MC4],
            abort_prepared(0, {commit_tlog, TLog}, Pattern,
                           calc_wmc_outcome(Pattern))
        end
        || MC1 <- causes(), MC2 <- causes(),
           MC3 <- causes(), MC4 <- causes()],
      ok.
  
  abort_prepared(_Key, Op, PreOps, ExpectedOutcome) ->
      Keys = ?RT:get_replica_keys(?RT:hash_key(0)),
      DBEntries = get_db_entries(Keys),
      NewDBEntries = [ begin
            NewDBEntry =
  
negative.code:     %% check all combinations of abort / prepared and the corresponding
      %% tx decisions
      %% modify DB and then do operations on the changed DB
      [ begin
            Key = init_new_db_key("abort_prepared_w"),
            abort_prepared(Key, write, [MC1, MC2, MC3, MC4],
                           calc_w_outcome([MC1, MC2, MC3, MC4]))
        end
        || MC1 <- causes(), MC2 <- causes(),
           MC3 <- causes(), MC4 <- causes()],
      ok.
  