Comment 27 for bug 1007268

Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

This is not an upstream issue: the upstream buf_flush_page() already holds both mutexes, both acquired in buf_flush_try_neighbors(). And buf_flush_yield() already has the buffer pool mutex and acquires the block one. In both cases the order is the same.

After fixing bug 1038225, buf_flush_yield() uses the LRU list mutex instead of the buffer pool mutex, eliminating this deadlock. Thus I consider this to be duplicate of already-fixed bug 1038225.

This fix will appear in the next release 5.5.27-28.1, please let us know if you still experience any issues with it. Thanks!