diff options
Diffstat (limited to 'innobase/buf/buf0rea.c')
-rw-r--r-- | innobase/buf/buf0rea.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/innobase/buf/buf0rea.c b/innobase/buf/buf0rea.c index 13e9ed0476b..644dd226a0e 100644 --- a/innobase/buf/buf0rea.c +++ b/innobase/buf/buf0rea.c @@ -73,11 +73,13 @@ buf_read_page_low( sync = TRUE; } #endif - if (trx_sys_hdr_page(space, offset)) { + if (ibuf_bitmap_page(offset) || trx_sys_hdr_page(space, offset)) { /* Trx sys header is so low in the latching order that we play safe and do not leave the i/o-completion to an asynchronous - i/o-thread: */ + i/o-thread. Ibuf bitmap pages must always be read with + syncronous i/o, to make sure they do not get involved in + thread deadlocks. */ sync = TRUE; } |