Bug #74605 | Failing assertion: node_addr.page != FIL_NULL in file btr0btr.cc line 1081 | ||
---|---|---|---|
Submitted: | 28 Oct 2014 13:50 | Modified: | 30 Oct 2014 16:24 |
Reporter: | Ramesh Sivaraman | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
Version: | 5.6.20-debug, 5.6.22, 5.7.6 | OS: | Linux (CentOS 7) |
Assigned to: | CPU Architecture: | Any |
[28 Oct 2014 13:50]
Ramesh Sivaraman
[28 Oct 2014 14:14]
MySQL Verification Team
Hello Ramesh Sivaraman, Thank you for the report and test case. Confirmed with 5.6.22 that only debug builds affected. Thanks, Umesh
[28 Oct 2014 14:16]
MySQL Verification Team
test results
Attachment: 74605_5_6_22.txt (text/plain), 10.97 KiB.
[28 Oct 2014 14:22]
MySQL Verification Team
// 5.7.6 debug build also affected
[28 Oct 2014 14:23]
MySQL Verification Team
test results
Attachment: 74605_5_7_6.txt (text/plain), 10.75 KiB.
[29 Oct 2014 8:34]
Marko Mäkelä
Thanks for the report. The problem is in the debug variable innodb_limit_optimistic_insert_debug. If you set it to the value 1, it will cause an infinite B-tree split. With the supplied test case, the infinite B-tree split occurs in the InnoDB change buffer, because innodb_change_buffering_debug=1 is trying to use the change buffer as much as possible. The fix is simple: with the values 0 and 1 of innodb_limit_optimistic_insert_debug, we must disable the special instrumentation.
[30 Oct 2014 16:24]
Daniel Price
Posted by developer: Fixed as of the upcoming 5.5.41, 5.6.22, 5.7.6 releases, and here's the changelog entry: In debug builds, setting the "innodb_limit_optimistic_insert_debug" debug configuration option to 1 would cause an infinite B-tree page split. Thank you for the bug report.
[2 Dec 2014 12:22]
Erlend Dahl
Bug#74577 was marked as a duplicate.
[3 Dec 2014 15:23]
Laurynas Biveinis
$ bzr log -r 4734 ------------------------------------------------------------ revno: 4734 committer: Marko Makela <marko.makela@oracle.com> branch nick: mysql-5.5 timestamp: Thu 2014-10-30 08:53:46 +0200 message: Bug#19904003 INNODB_LIMIT_OPTIMISTIC_INSERT_DEBUG=1 CAUSES INFINITE PAGE SPLIT The debug configuration parameter innodb_optimistic_insert_debug which was introduced for testing corner cases in B-tree handling had a bug in it. The value 1 would trigger an infinite sequence of page splits. Fix: When the value 1 is specified, disable this debug feature. Approved by Yasufumi Kinoshita
[5 Feb 2015 3:48]
Roel Van de Paar
See bug 75784