Bug #37224 | mysqld crash | ||
---|---|---|---|
Submitted: | 5 Jun 2008 14:26 | Modified: | 24 Jul 2008 17:14 |
Reporter: | Vasiliy Tolstov | Email Updates: | |
Status: | No Feedback | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S1 (Critical) |
Version: | 5.0.54 | OS: | Linux (gentoo linux) |
Assigned to: | Assigned Account | CPU Architecture: | Any |
Tags: | gallery2 |
[5 Jun 2008 14:26]
Vasiliy Tolstov
[5 Jun 2008 14:27]
Vasiliy Tolstov
mysqld.err
Attachment: mysqld.err (application/octet-stream, text), 3.10 KiB.
[5 Jun 2008 14:28]
Vasiliy Tolstov
gallery2 install log
Attachment: install_e2da264296.log (text/x-log), 20.99 KiB.
[5 Jun 2008 14:29]
Vasiliy Tolstov
strange crush while install gallery2 php script
[5 Jun 2008 14:55]
Heikki Tuuri
Vasiliy, can you resolve the stack trace? I am afraid the system tables of InnoDB might be corrupt. --Heikki 080605 18:16:37 InnoDB: Started; log sequence number 0 2234476438 080605 18:16:37 [Note] /usr/sbin/mysqld: ready for connections. Version: '5.0.54-debug-log' socket: '/var/run/mysqld/mysqld.sock' port: 3306 Gentoo Linux mysql-5.0.54 InnoDB: Error: trying to access page number 1737875456 in space 0, InnoDB: space name ./ibdata1, InnoDB: which is outside the tablespace bounds. InnoDB: Byte offset 0, len 16384, i/o type 10. InnoDB: If you get this error at mysqld startup, please check that InnoDB: your my.cnf matches the ibdata files that you have in the InnoDB: MySQL server. 080605 18:18:47InnoDB: Assertion failure in thread 2988239760 in file fil0fil.c line 3959 InnoDB: We intentionally generate a memory trap. InnoDB: Submit a detailed bug report to http://bugs.mysql.com. InnoDB: If you get repeated assertion failures or crashes, even InnoDB: immediately after the mysqld startup, there may be InnoDB: corruption in the InnoDB tablespace. Please refer to InnoDB: http://dev.mysql.com/doc/refman/5.0/en/forcing-recovery.html InnoDB: about forcing recovery. 080605 18:18:47 - mysqld got signal 11; This could be because you hit a bug. It is also possible that this binary or one of the libraries it was linked against is corrupt, improperly built, or misconfigured. This error can also be caused by malfunctioning hardware. We will try our best to scrape up some info that will hopefully help diagnose the problem, but since we have already crashed, something is definitely wrong and this may fail. key_buffer_size=16777216 read_buffer_size=8388608 max_used_connections=9 max_connections=400 threads_connected=7 It is possible that mysqld could use up to key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections = 2375680 K bytes of memory Hope that's ok; if not, decrease some variables in the equation. thd=0xaee21b40 Attempting backtrace. You can use the following information to find out where mysqld died. If you see no messages after this, something went terribly wrong... Cannot determine thread, fp=0xb21caff8, backtrace may not be correct. Stack range sanity check OK, backtrace follows: 0x81b0963 0x83e3331 0x83c0e82 0x83c14ca 0x83b69a4 0x83cf45c 0x83d7019 0x8373e54 0x8329971 0x836aa32 0x836493c 0x833fbdd 0x83a123a 0x8357ec4 0x829c8bd 0x829d143 0x828bddf 0x826a437 0x82a4c52 0x81cddb0 0x81ce455 0x81ceca9 0x81d0b95 0x444bd15b 0x44401afe New value of fp=(nil) failed sanity check, terminating stack trace! Please read http://dev.mysql.com/doc/mysql/en/using-stack-trace.html and follow instructions on how to resolve the stack trace. Resolved stack trace is much more helpful in diagnosing the problem, so please do resolve it Trying to get some variables. Some pointers may be invalid and cause the dump to abort... thd->query at 0x8c9b6c0 = CREATE TABLE g2_AccessSubscriberMap( g_itemId int(11) NOT NULL, g_accessListId int(11) NOT NULL, PRIMARY KEY(g_itemId), INDEX g2_AccessSubscriberMap_83732(g_accessListId) ) ENGINE=InnoDB /*!40100 DEFAULT CHARACTER SET utf8 */ thd->thread_id=85 The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains information that should help you find out what is causing the crash.
[5 Jun 2008 15:35]
Vasiliy Tolstov
how can i resolve stack trace ?
[5 Jun 2008 17:00]
Vasiliy Tolstov
ok. i'm read mysql manual and release stack i'm attach new mysqld.err (mysqld crush when i'm delete gallery2 tables from phpMyAdmin) resolved stack selfip ~ # resolve_stack_dump -s /root/mysqld.sym -n mysqld.stack 0x81b0963 handle_segfault + 773 0x83e3331 fil_io + 711 0x83c0e82 buf_LRU_invalidate_tablespace + 1432 0x83c14ca buf_read_page + 635 0x83b69a4 buf_page_get_gen + 320 0x83cf45c fsp_header_get_space_id + 547 0x83d7019 fseg_free_step + 428 0x8373e54 btr_free_but_not_root + 156 0x8329971 dict_drop_index_tree + 177 0x836882e row_upd_step + 4357 0x833f915 que_run_threads + 1013 0x83568c0 row_drop_table_for_mysql + 2109 0x8298330 _ZN11ha_innobase12delete_tableEPKc + 338 0x828aa29 _Z15ha_delete_tableP3THD7db_typePKcS3_b + 597 0x82a5ccf _Z20mysql_rm_table_part2P3THDP10TABLE_LISTbbbb + 983 0x82a62b0 _Z14mysql_rm_tableP3THDP10TABLE_LISTcc + 244 0x81c72d3 _Z21mysql_execute_commandP3THD + 2237 0x81ce455 _Z11mysql_parseP3THDPKcjPS2_ + 605 0x81ceca9 _Z16dispatch_command19enum_server_commandP3THDPcj + 2047
[5 Jun 2008 17:01]
Vasiliy Tolstov
new mysqld.err
Attachment: mysqld.err (application/octet-stream, text), 15.22 KiB.
[23 Jun 2008 17:33]
Heikki Tuuri
The crash and further errors probably are due to the .ibd files being not 'in sync' with the InnoDB data dictionary. What did you do prior to the errors? Did you move .ibd files around? Did mysqld crash in the middle of CREATE? Regards, Heikki
[23 Jun 2008 17:38]
Vasiliy Tolstov
no, a do not move idb files. i'm only try to install gallery2 and after not succeseful installation - i'm try to remove some tables from database... how can i test that is mysqld idb data are sync ? (because tables not deleted now..)
[24 Jun 2008 17:14]
Heikki Tuuri
Vasiliy, did you manually delete some .ibd files? That makes them out-of-sync. You can check that they are in-sync with innodb_table_monitor (see the manual) and compare the output to SHOW TABLES. Or, if the problem only concerns a few tables, SELECT soemthing from existing tables, and for non-existent tables, do CREATE ... to test if you can create them. InnoDB will print complaints to the .err log if something is wrong. The manual contains some hints how you can fix the sync without recreating the whole installation. Regards, Heikki
[24 Jul 2008 23:00]
Bugs System
No feedback was provided for this bug for over a month, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open".