Browse Source

Fix assertion with --innodb-sync-debug=ON

srv_purge_wakeup() is called under protection of latch in
purge_sys_t::resume()

move sync check code before acquiring that latch.
pull/1434/head
Vladislav Vaintroub 6 years ago
parent
commit
1bbb67b3f2
  1. 2
      storage/innobase/srv/srv0srv.cc
  2. 2
      storage/innobase/trx/trx0purge.cc

2
storage/innobase/srv/srv0srv.cc

@ -2290,8 +2290,6 @@ void
srv_purge_wakeup()
{
ut_ad(!srv_read_only_mode);
ut_ad(!sync_check_iterate(sync_check()));
if (srv_force_recovery >= SRV_FORCE_NO_BACKGROUND) {
return;
}

2
storage/innobase/trx/trx0purge.cc

@ -1349,7 +1349,7 @@ void purge_sys_t::resume()
ut_ad(!srv_undo_sources);
return;
}
ut_ad(!sync_check_iterate(sync_check()));
rw_lock_x_lock(&latch);
int32_t paused= m_paused--;
ut_a(paused);

Loading…
Cancel
Save