Skip to content

Commit c083f19

Browse files
committed
MDEV-37672: Remove innodb_trx_rseg_n_slots_debug
The debug parameter innodb_trx_rseg_n_slots_debug is not compatible with the bug fix that was implemented in MDEV-30671 and last revised in MDEV-33213, which leads to bogus assertion failures in trx_assign_rseg_low(), regarding look_for_rollover. When needed, this parameter can be better simulated by adding a DBUG_EXECUTE_IF to trx_undo_seg_create() or one of its callers.
1 parent 315b60e commit c083f19

File tree

12 files changed

+0
-279
lines changed

12 files changed

+0
-279
lines changed

mysql-test/suite/innodb/r/innodb_bug12400341.result

Lines changed: 0 additions & 18 deletions
This file was deleted.

mysql-test/suite/innodb/t/innodb_bug12400341.test

Lines changed: 0 additions & 102 deletions
This file was deleted.

mysql-test/suite/perfschema/t/show_sanity.test

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -491,7 +491,6 @@ insert into test.sanity values
491491
("JUNK: GLOBAL-ONLY", "I_S.SESSION_VARIABLES", "INNODB_SYNC_SPIN_LOOPS"),
492492
("JUNK: GLOBAL-ONLY", "I_S.SESSION_VARIABLES", "INNODB_TEMP_DATA_FILE_PATH"),
493493
("JUNK: GLOBAL-ONLY", "I_S.SESSION_VARIABLES", "INNODB_TRX_PURGE_VIEW_UPDATE_ONLY_DEBUG"),
494-
("JUNK: GLOBAL-ONLY", "I_S.SESSION_VARIABLES", "INNODB_TRX_RSEG_N_SLOTS_DEBUG"),
495494
("JUNK: GLOBAL-ONLY", "I_S.SESSION_VARIABLES", "INNODB_UNDO_DIRECTORY"),
496495
("JUNK: GLOBAL-ONLY", "I_S.SESSION_VARIABLES", "INNODB_UNDO_LOG_TRUNCATE"),
497496
("JUNK: GLOBAL-ONLY", "I_S.SESSION_VARIABLES", "INNODB_UNDO_TABLESPACES"),

mysql-test/suite/sys_vars/r/innodb_trx_rseg_n_slots_debug_basic.result

Lines changed: 0 additions & 65 deletions
This file was deleted.

mysql-test/suite/sys_vars/r/sysvars_innodb.result

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1663,18 +1663,6 @@ NUMERIC_BLOCK_SIZE NULL
16631663
ENUM_VALUE_LIST OFF,ON
16641664
READ_ONLY NO
16651665
COMMAND_LINE_ARGUMENT NULL
1666-
VARIABLE_NAME INNODB_TRX_RSEG_N_SLOTS_DEBUG
1667-
SESSION_VALUE NULL
1668-
DEFAULT_VALUE 0
1669-
VARIABLE_SCOPE GLOBAL
1670-
VARIABLE_TYPE INT UNSIGNED
1671-
VARIABLE_COMMENT Debug flags for InnoDB to limit TRX_RSEG_N_SLOTS for trx_rsegf_undo_find_free()
1672-
NUMERIC_MIN_VALUE 0
1673-
NUMERIC_MAX_VALUE 1024
1674-
NUMERIC_BLOCK_SIZE 0
1675-
ENUM_VALUE_LIST NULL
1676-
READ_ONLY NO
1677-
COMMAND_LINE_ARGUMENT NULL
16781666
VARIABLE_NAME INNODB_UNDO_DIRECTORY
16791667
SESSION_VALUE NULL
16801668
DEFAULT_VALUE

mysql-test/suite/sys_vars/t/innodb_trx_rseg_n_slots_debug_basic.test

Lines changed: 0 additions & 59 deletions
This file was deleted.

storage/innobase/handler/ha_innodb.cc

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19623,11 +19623,6 @@ static MYSQL_SYSVAR_ENUM(default_row_format, innodb_default_row_format,
1962319623
&innodb_default_row_format_typelib);
1962419624

1962519625
#ifdef UNIV_DEBUG
19626-
static MYSQL_SYSVAR_UINT(trx_rseg_n_slots_debug, trx_rseg_n_slots_debug,
19627-
PLUGIN_VAR_RQCMDARG | PLUGIN_VAR_NOCMDOPT,
19628-
"Debug flags for InnoDB to limit TRX_RSEG_N_SLOTS for trx_rsegf_undo_find_free()",
19629-
NULL, NULL, 0, 0, 1024, 0);
19630-
1963119626
static MYSQL_SYSVAR_UINT(limit_optimistic_insert_debug,
1963219627
btr_cur_limit_optimistic_insert_debug, PLUGIN_VAR_RQCMDARG,
1963319628
"Artificially limit the number of records per B-tree page (0=unlimited).",
@@ -19900,7 +19895,6 @@ static struct st_mysql_sys_var* innobase_system_variables[]= {
1990019895
MYSQL_SYSVAR(compression_pad_pct_max),
1990119896
MYSQL_SYSVAR(default_row_format),
1990219897
#ifdef UNIV_DEBUG
19903-
MYSQL_SYSVAR(trx_rseg_n_slots_debug),
1990419898
MYSQL_SYSVAR(limit_optimistic_insert_debug),
1990519899
MYSQL_SYSVAR(trx_purge_view_update_only_debug),
1990619900
MYSQL_SYSVAR(evict_tables_on_commit_debug),

storage/innobase/include/trx0sys.h

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,6 @@ inline buf_block_t *trx_sysf_get(mtr_t* mtr, bool rw= true)
7070
0, rw ? RW_X_LATCH : RW_S_LATCH, mtr);
7171
}
7272

73-
#ifdef UNIV_DEBUG
74-
/* Flag to control TRX_RSEG_N_SLOTS behavior debugging. */
75-
extern uint trx_rseg_n_slots_debug;
76-
#endif
77-
7873
/** Write DB_TRX_ID.
7974
@param[out] db_trx_id the DB_TRX_ID field to be written to
8075
@param[in] id transaction ID */

storage/innobase/trx/trx0purge.cc

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -437,7 +437,6 @@ inline dberr_t purge_sys_t::iterator::free_history_rseg(trx_rseg_t &rseg) const
437437
rollback segment. */
438438

439439
if (!(rseg.SKIP & rseg_ref) && !freed &&
440-
ut_d(!trx_rseg_n_slots_debug &&)
441440
&rseg == &trx_sys.rseg_array[purge_sys.skipped_rseg])
442441
/* If rseg.space == purge_sys.truncate_undo_space.current
443442
the following will be a no-op. A possible conflict

storage/innobase/trx/trx0sys.cc

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,6 @@ Created 3/26/1996 Heikki Tuuri
4545
trx_sys_t trx_sys;
4646

4747
#ifdef UNIV_DEBUG
48-
/* Flag to control TRX_RSEG_N_SLOTS behavior debugging. */
49-
uint trx_rseg_n_slots_debug = 0;
50-
5148
void rw_trx_hash_t::validate_element(trx_t *trx)
5249
{
5350
ut_ad(!trx->read_only || !trx->rsegs.m_redo.rseg);

0 commit comments

Comments
 (0)