Commit b9824074 authored by Marko Mäkelä's avatar Marko Mäkelä

MDEV-17851 Assertion failure srv_undo_tablespaces > 1

trx_assign_rseg_low(): Skip dedicated undo tablespaces if
innodb_undo_tablespaces=0 has been set after the database was created.
parent 861038f2
...@@ -1002,9 +1002,7 @@ trx_lists_init_at_db_start() ...@@ -1002,9 +1002,7 @@ trx_lists_init_at_db_start()
evenly distributed between 0 and innodb_undo_logs-1 evenly distributed between 0 and innodb_undo_logs-1
@return persistent rollback segment @return persistent rollback segment
@retval NULL if innodb_read_only */ @retval NULL if innodb_read_only */
static static trx_rseg_t* trx_assign_rseg_low()
trx_rseg_t*
trx_assign_rseg_low()
{ {
if (srv_read_only_mode) { if (srv_read_only_mode) {
ut_ad(srv_undo_logs == ULONG_UNDEFINED); ut_ad(srv_undo_logs == ULONG_UNDEFINED);
...@@ -1055,8 +1053,8 @@ trx_assign_rseg_low() ...@@ -1055,8 +1053,8 @@ trx_assign_rseg_low()
ut_ad(rseg->is_persistent()); ut_ad(rseg->is_persistent());
if (rseg->space != TRX_SYS_SPACE) { if (rseg->space != TRX_SYS_SPACE) {
ut_ad(srv_undo_tablespaces > 1); if (rseg->skip_allocation
if (rseg->skip_allocation) { || !srv_undo_tablespaces) {
continue; continue;
} }
} else if (trx_rseg_t* next } else if (trx_rseg_t* next
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment