mariadb/storage/innobase/buf
Marko Mäkelä a13a636c74 MDEV-11802 innodb.innodb_bug14676111 fails
The function trx_purge_stop() was calling os_event_reset(purge_sys->event)
before calling rw_lock_x_lock(&purge_sys->latch). The os_event_set()
call in srv_purge_coordinator_suspend() is protected by that X-latch.

It would seem a good idea to consistently protect both os_event_set()
and os_event_reset() calls with a common mutex or rw-lock in those
cases where os_event_set() and os_event_reset() are used
like condition variables, tied to changes of shared state.

For each os_event_t, we try to document the mutex or rw-lock that is
being used. For some events, frequent calls to os_event_set() seem to
try to avoid hangs. Some events are never waited for infinitely, only
timed waits, and os_event_set() is used for early termination of these
waits.

os_aio_simulated_put_read_threads_to_sleep(): Define as a null macro
on other systems than Windows. TODO: remove this altogether and disable
innodb_use_native_aio on Windows.

os_aio_segment_wait_events[]: Initialize only if innodb_use_native_aio=0.

log_write_flush_to_disk_low(): Invoke log_mutex_enter() at the end, to
avoid race conditions when changing the system state. (No potential
race condition existed before MySQL 5.7.)
2017-02-20 12:32:43 +02:00
..
buf0buddy.cc Merge InnoDB 5.7 from mysql-5.7.9. 2016-09-02 13:22:28 +03:00
buf0buf.cc Merge branch '10.1' into 10.2 2017-02-10 17:01:45 +01:00
buf0checksum.cc Merge InnoDB 5.7 from mysql-5.7.14. 2016-09-08 15:49:03 +03:00
buf0dblwr.cc MDEV-11254: innodb-use-trim has no effect in 10.2 2017-01-24 14:40:58 +02:00
buf0dump.cc MDEV-11802 innodb.innodb_bug14676111 fails 2017-02-20 12:32:43 +02:00
buf0flu.cc MDEV-11802 innodb.innodb_bug14676111 fails 2017-02-20 12:32:43 +02:00
buf0lru.cc Fix InnoDB compilation warnings. 2017-01-05 11:49:00 +02:00
buf0mtflu.cc Fix InnoDB compilation warnings. 2017-01-05 11:49:00 +02:00
buf0rea.cc MDEV-11254: innodb-use-trim has no effect in 10.2 2017-01-24 14:40:58 +02:00