Comment 7 for bug 1100178

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

The upstream fixed other instances this assertion might come up by the following commit in 5.5.

$ bzr log -r 3400
------------------------------------------------------------
revno: 3400
committer: Marko Mäkelä <email address hidden>
branch nick: mysql-5.5
timestamp: Tue 2011-05-24 23:08:22 +0300
message:
  Bug#12584374 LOCK_VALIDATE TRIPS ASSERTION !BLOCK->PAGE.FILE_PAGE_WAS_FREE

  Fix a deadlock in the initial patch. lock_validate() must not hold the
  lock system mutex while s-latching a block, because some functions,
  such as lock_rec_convert_impl_to_expl(), may be already holding an x-latch
  on the block that lock_validate() is interested in while attempting to
  acquire the lock system mutex.

  This deadlock was not caught by UNIV_SYNC_DEBUG because of
  buf_block_dbg_add_level(block, SYNC_NO_ORDER_CHECK).