MDEV-25313: Assertion pending==log_requests.start... failed

log_flush_notify(): Restore the reload of log_requests.start that was
accidentally removed in commit 8c2e3259c13d1d0a494fb3f9c1e5fb780a193ab1.

Thanks to Elena Stepanova for a test case (repeatedly running FLUSH LOGS
concurrently with InnoDB write transactions).
This commit is contained in:
Marko Mäkelä 2021-04-01 09:36:37 +03:00
parent 147a317e81
commit 7f75acc05c

View File

@ -4506,6 +4506,7 @@ void log_flush_notify(lsn_t flush_lsn)
if (auto pending= log_requests.start.load(std::memory_order_acquire))
{
mysql_mutex_lock(&log_requests.mutex);
pending= log_requests.start.load(std::memory_order_relaxed);
log_flush_notify_and_unlock(pending, flush_lsn);
}
}