InnoDB lock monitor output is printed even if not requested

Bug #1418996 reported by Laurynas Biveinis on 2015-02-06
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Percona Server moved to https://jira.percona.com/projects/PS
Fix Released
Medium
Laurynas Biveinis
5.1
Won't Fix
Undecided
Unassigned
5.5
Fix Released
Medium
Laurynas Biveinis
5.6
Fix Released
Medium
Laurynas Biveinis

Bug Description

lock_print_info_all_transactions(...)
{
...
loop:
/* print transaction info */
...
        if (!srv_print_innodb_lock_monitor && !srv_show_locks_held) {
  nth_trx++;
  goto loop;
 }
/* print lock info */
 goto loop;
}

The above code means that the lock info is printed if either innodb lock monitor is on, either innodb_show_locks_held > 0 (its default value is 10). The condition should have been that lock info is printed if both innodb lock monitor is on and innodb_show_locks_held > 0.

This shows up as innodb-status-ouput --big-test test failure on 5.6:

innodb.innodb-status-output [ fail ]
        Test ended at 2015-02-06 11:16:44

CURRENT_TEST: innodb.innodb-status-output
# ERROR: The file '/Users/laurynas/percona/lp-mysql-server/big-test-fixes/obj-debug/mysql-test/var/tmp/innodb-status-output.err' does not contain the expected pattern SELECT SLEEP.*\n------
->
...

Related branches

tags: added: ci xtradb

Percona now uses JIRA for bug reports so this bug report is migrated to: https://jira.percona.com/browse/PS-1609

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers