anchor.diff:                  end
           end
       end,
  -    spawn(mnesia, transaction, [F, [F,undefined]]).
  -
  +    spawn(mnesia, async_dirty, [F, [F,undefined]]).
  
positive.code:             Pid ! next,
              receive
                  eot ->
                      io:format(user, "[~p] finished~n", [Title]);
                  {row, Row} ->
                      io:format(user, "[~p] got rows ~p~n", [Title, length(Row)]),
                      timer:sleep(Delay),
                      F(F)
              end
  
negative.code: -module(imem_mnesia_tests).
  
  %% Application callbacks
  -compile(export_all).
  
  -include_lib("eunit/include/eunit.hrl").
  
  -define(ROWCOUNT, 100).
  -define(THREAD_A_DELAY, 2000).
  -define(THREAD_B_DELAY, 2000).
  -define(THREAD_A_CHUNK, 5).
  -define(THREAD_B_CHUNK, 10).
  -define(TEST_TIMEOUT, 1000000).
  
  % EUnit tests --
  setup() ->
      mnesia:start(),
      {atomic, ok} = mnesia:create_table(table, [{attributes, [col1, col2, col3]}]),
      ok.
  
  teardown(_) ->
      mnesia:delete_table(table),
      mnesia:stop().
  
  imem_mnesia_test_() ->
      {timeout, ?TEST_TIMEOUT, {
  