Bug #69617 5.6.12 removed UNIV_SYNC_DEBUG from UNIV_DEBUG
Submitted: 28 Jun 2013 19:10 Modified: 3 Feb 2014 11:34
Reporter: Laurynas Biveinis (OCA) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S3 (Non-critical)
Version:5.6.12 OS:Any
Assigned to: CPU Architecture:Any
Tags: debug, UNIV_DEBUG, UNIV_SYNC_DEBUG, WITH_DEBUG

[28 Jun 2013 19:10] Laurynas Biveinis
Description:
univ.i has this new line in 5.6.12 compared to 5.6.11:

#undef UNIV_SYNC_DEBUG

Line 174.

Bzr annotate points to [1], whose commit message does not mention this rather big change, nor the commit itself looks like it would be related to locking in any way.

Is it an unintended change that should be reverted?

[1]

5.6$ bzr log -r 5058 -n0
------------------------------------------------------------
revno: 5058 [merge]
committer: Marko Mäkelä <marko.makela@oracle.com>
branch nick: mysql-5.6
timestamp: Tue 2013-04-30 14:45:16 +0300
message:
  Merge mysql-5.5 to mysql-5.6.
    ------------------------------------------------------------
    revno: 2875.437.81
    committer: Marko Mäkelä <marko.makela@oracle.com>
    branch nick: mysql-5.5
    timestamp: Tue 2013-04-30 13:39:50 +0300
    message:
      Bug#16720368 INNODB IGNORES *.IBD FILE BREAKAGE AT STARTUP
      
      After a clean shutdown, InnoDB will not check the *.ibd file headers,
      for maximum performance. This is unchanged before and after this
      patch.
      
      What this fix addresses is the case when crash recovery is
      needed. Previously, InnoDB could load a corrupted tablespace file.
      
      buf_page_is_corrupted(): Add the parameter check_lsn.
      
      fil_check_first_page(): New function, to perform a consistency check
      on the first page of a file. This can be overridden by setting
      innodb_force_recovery.
      
      fil_read_first_page(), fil_open_single_table_tablespace(),
      fil_load_single_table_tablespace(): Invoke fil_check_first_page().
      
      open_or_create_data_files(): Check the status of
      fil_open_single_table_tablespace().
      
      rb#2352 approved by Jimmy Yang

How to repeat:
Open univ.i, search for UNIV_SYNC_DEBUG

Suggested fix:
Remove the #undef.
[30 Jun 2013 7:54] MySQL Verification Team
Thank you for the report.
[23 Sep 2013 12:28] Raghavendra Prabhu
Is this an intended change? I am seeing a crash associated with UNIV_SYNC_DEBUG (after removing that undef). So, should this be kept or removed?
[5 Dec 2013 13:07] Laurynas Biveinis
This bug being unfixed allows UNIV_SYNC_DEBUG to bitrot, see bug 71092.
[5 Dec 2013 13:12] Laurynas Biveinis
Bug 69617 patch

(*) I confirm the code being submitted is offered under the terms of the OCA, and that I am authorized to contribute it.

Contribution: 69617.patch (text/x-patch), 345 bytes.

[13 Dec 2013 13:03] Daniel Price
Fixed as of 5.6.16, 5.7.4, and here's the changelog entry:

"UNIV_SYNC_DEBUG", which was disabled in "univ.i" with the fix for
Bug#16720368, is now enabled.

Thank you for the bug report.
[3 Feb 2014 11:34] Laurynas Biveinis
5.6$ bzr log -r 5688
------------------------------------------------------------
revno: 5688
committer: Shaohua Wang <shaohua.wang@oracle.com>
branch nick: mysql-5.6-bugfix1
timestamp: Fri 2013-12-13 17:56:54 +0800
message:
  Bug#17033591 5.6.12 REMOVED UNIV_SYNC_DEBUG FROM UNIV_DEBUG
  
  Enable UNIV_SYNC_DEBUG and fix fts test failures.
  
  rb://4139 approved by Marko and Jimmy.
[10 Feb 2014 11:28] Ståle Deraas
Thank you for the contribution!