mariadb/storage/innobase/trx
Marko Mäkelä c720e68f53 MDEV-13472 rpl.rpl_semi_sync_wait_point crashes because of thd_destructor_proxy
The thd_destructor_proxy detects that no transactions are active and
starts srv_shutdown_bg_undo_sources(), but fails to take into account
that new transactions can still start, especially be slave but also
by other threads. In addition there is no mutex when checking for
active transaction so this is not safe.

We relax the failing InnoDB debug assertion by allowing the execution
of user transactions after the purge thread has been shut down.

FIXME: If innodb_fast_shutdown=0, we should somehow guarantee that no
new transactions can start after thd_destructor_proxy observed that
trx_sys_any_active_transactions() did not hold.
2017-08-09 08:14:39 +03:00
..
trx0i_s.cc Remove trx_t::has_search_latch and simplify debug code 2017-06-16 13:17:05 +03:00
trx0purge.cc MDEV-13472 rpl.rpl_semi_sync_wait_point crashes because of thd_destructor_proxy 2017-08-09 08:14:39 +03:00
trx0rec.cc Assert that DB_TRX_ID must be set on delete-marked records 2017-07-01 11:02:58 +03:00
trx0roll.cc Merge 10.1 into 10.2 2017-05-23 11:09:47 +03:00
trx0rseg.cc Merge 10.1 into 10.2 2017-06-08 12:45:08 +03:00
trx0sys.cc Simplify access to the binlog offset in InnoDB 2017-06-29 23:03:39 +03:00
trx0trx.cc Add DBUG "trx" instrumentation that was used for catching MDEV-13470 2017-08-08 15:32:23 +03:00
trx0undo.cc MDEV-12289 Keep 128 persistent rollback segments for compatibility and performance 2017-03-31 18:53:04 +03:00