Branch: refs/heads/master
  Home:   https://github.com/mailru/tarantool
  Commit: 9d14011f343dbeac63e492e3d7762dae008b9ca9
      
https://github.com/mailru/tarantool/commit/9d14011f343dbeac63e492e3d7762dae008b9ca9
  Author: Konstantin Osipov <[email protected]>
  Date:   2012-06-14 (Thu, 14 Jun 2012)

  Changed paths:
    M include/errinj.h
    M mod/box/request.m
    M mod/box/txn.m
    M src/recovery.m
    M test/box/errinj.result
    M test/box/errinj.test

  Log Message:
  -----------
  A fix for https://bugs.launchpad.net/tarantool/+bug/790688

A fix for bug https://bugs.launchpad.net/tarantool/+bug/790688
"ER_TUPLE_IS_RO should be more rare".

Rewrite the transaction processor to optimistically
perform changes in memory. In case of an error, transactions
are rolled back in order, reverse to the order of execution,
and gradually restore the original state of memory.
The wal writer therad orchestrates the rollback, by not
initiating it until all queries which entered the processing queue
before the error has occurred were not added to the rollback queue.

While in the state of rollback (i.e. collecting all requests
for rollback) new requests are not accepted into the processing
queue (see changes in wal_write()).

XXX: This patch makes dirty reads possible when we are in rollback,
since SELECTs do not enter the wal writer queue and can therefore
see changes which later will be rolled back. Since this is a
very rare situation, it's considered acceptable to fix this problem
in a separate patch (a separate bug will be reported).


  Commit: f93d19a1a92afbe549f057f815dd036c9e56183b
      
https://github.com/mailru/tarantool/commit/f93d19a1a92afbe549f057f815dd036c9e56183b
  Author: Konstantin Osipov <[email protected]>
  Date:   2012-06-14 (Thu, 14 Jun 2012)

  Changed paths:
    M test/lib/test_suite.py

  Log Message:
  -----------
  Fix unit test run under valgrind.


Compare: https://github.com/mailru/tarantool/compare/b620082e168c...f93d19a1a92a
_______________________________________________
Mailing list: https://launchpad.net/~tarantool-developers
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~tarantool-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to