Kristian Nielsen
ba02550166
MDEV-7818: Deadlock occurring with parallel replication and FTWRL
...
Problem is that FLUSH TABLES WITH READ LOCK first blocks threads from
starting new commits, then waits for running commits to complete. But
in-order parallel replication needs commits to happen in a particular
order, so this can easily deadlock.
To fix this problem, this patch introduces a way to temporarily pause
the parallel replication worker threads. Before starting FTWRL, we let
all worker threads complete in-progress transactions, and then
wait. Then we proceed to take the global read lock. Once the lock is
obtained, we unpause the worker threads. Now commits are blocked from
starting by the global read lock, so the deadlock will no longer occur.
2015-11-13 14:02:15 +01:00
..
2015-03-08 23:12:19 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:22:16 +02:00
2014-05-07 10:04:30 +02:00
2014-05-06 23:22:16 +02:00
2013-12-09 12:37:45 +01:00
2014-05-06 23:22:16 +02:00
2014-05-06 23:22:16 +02:00
2014-05-06 23:22:16 +02:00
2013-12-09 12:37:45 +01:00
2013-07-21 16:39:19 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 16:34:59 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 10:04:30 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 10:04:30 +02:00
2014-05-07 16:12:16 +02:00
2015-08-03 13:05:40 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 16:12:16 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 16:12:16 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 22:36:25 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2015-10-09 18:24:17 +02:00
2014-06-05 09:03:55 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 16:12:16 +02:00
2014-05-06 23:20:50 +02:00
2014-05-09 12:35:11 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2015-08-03 16:34:59 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 10:04:30 +02:00
2014-05-07 10:04:30 +02:00
2014-05-07 10:04:30 +02:00
2014-05-07 10:04:30 +02:00
2014-05-07 10:04:30 +02:00
2015-08-03 16:34:59 +02:00
2014-05-06 23:20:50 +02:00
2015-10-09 17:22:53 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 10:04:30 +02:00
2014-05-06 23:20:50 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-07 16:12:16 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2015-08-03 13:05:40 +02:00
2014-05-06 23:22:16 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-09 12:35:11 +02:00
2015-11-13 14:02:15 +01:00
2014-05-09 12:35:11 +02:00
2014-05-09 12:35:11 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-05-05 15:23:47 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2014-05-06 23:20:50 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2014-05-06 23:22:16 +02:00
2014-05-06 23:20:50 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 16:34:59 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2015-08-03 13:05:40 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 13:57:56 +02:00
2014-05-06 23:20:50 +02:00
2014-05-06 23:20:50 +02:00
2015-06-16 11:00:33 +02:00
2014-05-06 23:20:50 +02:00
2015-08-03 13:05:40 +02:00
2012-12-15 21:54:18 +01:00
2014-05-06 23:20:50 +02:00