Skip to content

Commit

Permalink
Bug #24488141 ACTIVE UNDO TABLESPACE NOT UPDATED WHEN INNODB_UNDO_LOG…
Browse files Browse the repository at this point in the history
…S IS INCREASED

Problem:
========
 If we increase innodb_undo_logs value during startup. New rollback
segment might get allocated during trx_sys_create_rseg(). Essentially, it
would make these tablesapces active with transaction undo data and purge.
But it doesn't come in active undo tablespaces. so these tablespace would
never get truncated.

Fix:
===
 Increase the number of active undo tablespace when we are assigning the
undo tablespace to the newly assigned rollback segment.

Reviewed-by: Kevin Lewis <kevin.lewis@oracle.com>
Reviewed-by: Debarun Banerjee <debarun.banerjee@oracle.com>
RB: 13746
  • Loading branch information
Thirunarayanan authored and dr-m committed Apr 26, 2017
1 parent bdfa49f commit d1bcc1f
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions storage/innobase/trx/trx0sys.cc
Original file line number Diff line number Diff line change
Expand Up @@ -921,6 +921,15 @@ trx_sys_create_rsegs()
" requested innodb_undo_logs";
return(false);
}

/* Increase the number of active undo
tablespace in case new rollback segment
assigned to new undo tablespace. */
if (space > srv_undo_tablespaces_active) {
srv_undo_tablespaces_active++;

ut_ad(srv_undo_tablespaces_active == space);
}
}
}

Expand Down

0 comments on commit d1bcc1f

Please sign in to comment.