-
Committer:
Stewart Smith
-
Author(s):
Sunny Bains
-
Date:
2010-11-17 06:09:19 UTC
-
mto:
(2021.1.2 build)
-
mto:
This revision was merged to the branch mainline in
revision
1971.
-
Revision ID:
stewart@flamingspork.com-20101117060919-yrrimu4o4wbycwph
Merge Revision revid:sunny.bains@oracle.com-20100721231619-lys5zrqq2damrm69 from MySQL InnoDB
Original revid:sunny.bains@oracle.com-20100721231619-lys5zrqq2damrm69
Original Authors: Sunny Bains <Sunny.Bains@Oracle.Com>
Original commit message:
Bug#54583 InnoDB: Assertion failure sync/sync0sync.c:1226
Silence the UNIV_SYNC_DEBUG assertion failure while upgrading old data files
to multiple rollback segments during server startup. Because the upgrade
takes place while InnoDB is running a single thread, we can safely ignore the
latching order checks without fearing deadlocks.
innobase_start_or_create_for_mysql(): Set srv_is_being_started = FALSE
only after trx_sys_create_rsegs() has completed.
sync_thread_add_level(): If srv_is_being_started, ignore latching order
violations for SYNC_TRX_SYS_HEADER and SYNC_IBUF_BITMAP.
Create all the non-IO threads after creating the extra rollback segments.
Patch originally from Marko with some additions by Sunny.