Bug #13791 | mysqld crashes at startup in 5.0.15bk | ||
---|---|---|---|
Submitted: | 6 Oct 2005 1:59 | Modified: | 6 Oct 2005 18:47 |
Reporter: | Jorge del Conde | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server | Severity: | S1 (Critical) |
Version: | 5.0.15-rc from BK | OS: | Linux (Linux/Windows) |
Assigned to: | Sergei Golubchik | CPU Architecture: | Any |
[6 Oct 2005 1:59]
Jorge del Conde
[6 Oct 2005 3:51]
Marko Mäkelä
In a compile-pentium-debug build, there is some more information in the error log. InnoDB itself seems to start up fine, even when upgrading from 4.0 to 5.0. The error appears to occur during the MySQL initialization, in the tc_log->open() call in init_server_components(), file mysqld.cc. Here is an excerpt from the error log when starting InnoDB from the scratch, using mysql 4.0 system tables (if it matters). 051006 6:58:40 InnoDB: Started; log sequence number 0 0 /home/marko/mysql-5.0-bk/sql/mysqld: Can't change size of file (Errcode: 9) 051006 6:58:40 [ERROR] Can't init tc log 051006 6:58:40 [ERROR] Aborting 051006 6:58:40 InnoDB: Starting shutdown... 051006 6:58:43 InnoDB: Shutdown completed; log sequence number 0 43655 051006 6:58:43 [Note] /home/marko/mysql-5.0-bk/sql/mysqld: Shutdown complete I believe that this may be due to a change outside of InnoDB. Interestingly, the datadir contains a file "0" of length 0 and permissions 000.
[6 Oct 2005 4:01]
Marko Mäkelä
I added a debug print right before the tc_log->open() call in init_server_components(). When --skip-innodb is specified, tc_log_dummy will be used. When InnoDB is enabled, tc_log_mmap will be used. This looks like a bug in tc_log_mmap, thus not an InnoDB bug. Of course, I may be seeing some other problem. An unresolved stack trace of a development snapshot does not say anything. Please, always resolve stack traces.
[6 Oct 2005 11:59]
MySQL Verification Team
I have experienced this bug too and discussed it with Kent on IRC, for to happen you need to start the server without a default my.cnf which contents the basedir. If you use for example: libexec/mysqld --defaults-file=/path/my.cnf the server starts without problem. This also happens on Windows.
[6 Oct 2005 17:08]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/internals/30775