Bug #40152 Crash in LIBMYSQLD.dll!innobase_release_temporary_latches in windows embedded
Submitted: 19 Oct 2008 18:32 Modified: 5 Dec 2008 10:56
Reporter: Sven Sandberg Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S2 (Serious)
Version:6.0-rpl OS:Windows (win2003-x86/embedded)
Assigned to: Lars Thalmann CPU Architecture:Any
Tags: crash, pushbuild, test failure

[19 Oct 2008 18:32] Sven Sandberg
Description:
Strange crash in pushbuild in 6.0-rpl. The failures happened consistently on win2003-x86/embedded in completion_type_func and innodb_autoinc_lock_mode_func, in every push from https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=bzr_mysql-6.0-rpl&order=61 to https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=bzr_mysql-6.0-rpl&order=66 . It also happened in 5.1-rpl, between the same changesets. It did not happen at a ny other platform, time, or tree.

So it may look like the bug is already fixed. However, there are two candidate pushes that could have fixed it: https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=bzr_mysql-6.0-rpl&order=67 and https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=bzr_mysql-6.0-rpl&order=68 . None of these changed the server (only tests). So the crash can probably still be triggered.

The error message is:

main.completion_type_func                [ fail ]

CURRENT_TEST: main.completion_type_func
InnoDB: The first specified data file e:\pb\bzr_mysql-6.0-rpl\66\mysql-6.0.7-alpha-pb66\mysql-test\var-embedded-7\2\mysqld.1\data\ibdata1 did not exist:
InnoDB: a new database to be created!
080910 13:43:53  InnoDB: Setting file e:\pb\bzr_mysql-6.0-rpl\66\mysql-6.0.7-alpha-pb66\mysql-test\var-embedded-7\2\mysqld.1\data\ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
080910 13:43:53  InnoDB: Log file e:\pb\bzr_mysql-6.0-rpl\66\mysql-6.0.7-alpha-pb66\mysql-test\var-embedded-7\2\mysqld.1\data\ib_logfile0 did not exist: new to be created
InnoDB: Setting log file e:\pb\bzr_mysql-6.0-rpl\66\mysql-6.0.7-alpha-pb66\mysql-test\var-embedded-7\2\mysqld.1\data\ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
080910 13:43:53  InnoDB: Log file e:\pb\bzr_mysql-6.0-rpl\66\mysql-6.0.7-alpha-pb66\mysql-test\var-embedded-7\2\mysqld.1\data\ib_logfile1 did not exist: new to be created
InnoDB: Setting log file e:\pb\bzr_mysql-6.0-rpl\66\mysql-6.0.7-alpha-pb66\mysql-test\var-embedded-7\2\mysqld.1\data\ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
mysqltest got exception 0xc0000005
read_command_buf at 005D7EB0=
conn->name at 066DC090=
conn->cur_query at 00000000=
Attempting backtrace...
101EE60A    LIBMYSQLD.dll!innobase_release_temporary_latches()[ha_innodb.cc:549]
101F49ED    LIBMYSQLD.dll!ha_innobase::close()[ha_innodb.cc:2486]
100FAF23    LIBMYSQLD.dll!closefrm()[table.cc:2076]
10095BEB    LIBMYSQLD.dll!close_cached_tables()[sql_base.cc:902]
100960D6    LIBMYSQLD.dll!table_def_free()[sql_base.cc:277]
10029FAC    LIBMYSQLD.dll!clean_up()[mysqld.cc:1336]
1002A8BC    LIBMYSQLD.dll!end_embedded_server()[lib_sql.cc:570]
1001402E    LIBMYSQLD.dll!mysql_server_end()[libmysql.c:204]
0040F214    mysqltest_embedded.exe!main()[mysqltest.cc:7862]
0043933A    mysqltest_embedded.exe!mainCRTStartup()[crt0.c:259]
77E4F38C    kernel32.dll!TerminateThread()

 - saving 'e:/pb/bzr_mysql-6.0-rpl/66/mysql-6.0.7-alpha-pb66/mysql-test/var-embedded-7/2/log/main.completion_type_func/' to 'e:/pb/bzr_mysql-6.0-rpl/66/mysql-6.0.7-alpha-pb66/mysql-test/var-embedded-7/log/main.completion_type_func/'

Retrying test, attempt(2/3)...

cygpath -m e:/pb/bzr_mysql-6.0-rpl/66/mysql-6.0.7-alpha-pb66/libmysqld/examples/relwithdebinfo/mysqltest_embedded.exe
cygpath -m e:/pb/bzr_mysql-6.0-rpl/66/mysql-6.0.7-alpha-pb66/mysql-test/var-embedded-7/2/log/current_test

How to repeat:
https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=bzr_mysql-6.0-rpl&order=66 win2003-x86/embedded
xref: http://tinyurl.com/4x3p9g

Suggested fix:
The push at https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=bzr_mysql-6.0-rpl&order=67 modified the two failing tests, changing some queries from lowercase to uppercase. That's the only thing that seems remotely related to the crash. I suggest reverting the changset of https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=bzr_mysql-6.0-rpl&order=67 in these two files and see if the error comes back.
[20 Oct 2008 17:28] Mikhail Izioumtchenko
Calvin is our Windows and also 6.0 expert. Interesting question, what are the names of the two files changed between the version.
[20 Oct 2008 17:48] Mikhail Izioumtchenko
Not a bug because as far as I understand 6.0-rpl is a branch private to MySQL, but please correct me if I'm wrong.
[20 Oct 2008 17:56] Mikhail Izioumtchenko
removing assignment, setting back to 'Veified' because it's still probably a bug from MySQL's standpoint, but changing the area to replication (per Calvin)
[5 Dec 2008 10:56] Lars Thalmann
We can't repeat this failure.  Closing bug as "Can't repeat".