Bug #69724 log_sys->old_lsn and old_buf_free was compiled even UNIV_LOG_DEBUG is disabled
Submitted: 11 Jul 2013 17:01 Modified: 30 Jul 2013 13:18
Reporter: zhai weixiang (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

[11 Jul 2013 17:01] zhai weixiang
Description:
as commented in log0log.h, both old_buf_free and old_lsn should only be used in the debug version.

	ulint		old_buf_free;	/*!< value of buf free when log was
					last time opened; only in the debug
					version */
	ib_uint64_t	old_lsn;	/*!< value of lsn when log was
					last time opened; only in the
					debug version */

I think the code quoted above can be compiled only when UNIV_LOG_DEBUG is enabled.  

forgive my picky....

How to repeat:
read the code 

Suggested fix:
+#ifdef UNIV_LOG_DEBUG  
        ulint          old_buf_free;   /*!< value of buf free when log was
                                        last time opened; only in the debug
                                        version */
        ib_uint64_t     old_lsn;        /*!< value of lsn when log was
                                        last time opened; only in the
                                        debug version */
+#endif
[14 Jul 2013 6:44] MySQL Verification Team
Hello Zhai,

Thank you for the report and contribution.

Thanks,
Umesh
[30 Jul 2013 13:18] Bugs System
Added a changelog entry for 5.6.14, 5.7.2:

As commented in "log0log.h", "old_lsn" and "old_buf_free" should only be
compiled when "UNIV_LOG_DEBUG" is enabled.

Thank you for the bug report.