Unclean shutdown corrupted Aria table blocking startup
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MariaDB |
Fix Released
|
High
|
Michael Widenius |
Bug Description
On 3 different servers now MariaDB failed to start after a power failure:
====
Jul 22 15:54:38 filt01 mysqld_safe: Starting mysqld daemon with databases from /var/lib/mysql
Jul 22 15:54:38 filt01 mysqld: 110722 15:54:38 [Warning] '--log_
Jul 22 15:54:38 filt01 mysqld: 110722 15:54:38 [Warning] 'master-host' is deprecated and will be removed in a future release. Please use ''CHANGE MASTER'' instead.
Jul 22 15:54:38 filt01 mysqld: 110722 15:54:38 [ERROR] mysqld got signal 11 ;
Jul 22 15:54:38 filt01 mysqld: This could be because you hit a bug. It is also possible that this binary
Jul 22 15:54:38 filt01 mysqld: or one of the libraries it was linked against is corrupt, improperly built,
Jul 22 15:54:38 filt01 mysqld: or misconfigured. This error can also be caused by malfunctioning hardware.
Jul 22 15:54:38 filt01 mysqld: We will try our best to scrape up some info that will hopefully help diagnose
Jul 22 15:54:38 filt01 mysqld: the problem, but since we have already crashed, something is definitely wrong
Jul 22 15:54:38 filt01 mysqld: and this may fail.
Jul 22 15:54:38 filt01 mysqld:
Jul 22 15:54:38 filt01 mysqld: key_buffer_
Jul 22 15:54:38 filt01 mysqld: read_buffer_
Jul 22 15:54:38 filt01 mysqld: max_used_
Jul 22 15:54:38 filt01 mysqld: max_threads=502
Jul 22 15:54:38 filt01 mysqld: threads_connected=0
Jul 22 15:54:38 filt01 mysqld: It is possible that mysqld could use up to
Jul 22 15:54:38 filt01 mysqld: key_buffer_size + (read_buffer_size + sort_buffer_
Jul 22 15:54:38 filt01 mysqld: bytes of memory
Jul 22 15:54:38 filt01 mysqld: Hope that's ok; if not, decrease some variables in the equation.
Jul 22 15:54:38 filt01 mysqld:
Jul 22 15:54:38 filt01 mysqld: Thread pointer: 0x0
Jul 22 15:54:38 filt01 mysqld: Attempting backtrace. You can use the following information to find out
Jul 22 15:54:38 filt01 mysqld: where mysqld died. If you see no messages after this, something went
Jul 22 15:54:38 filt01 mysqld: terribly wrong...
Jul 22 15:54:38 filt01 mysqld: stack_bottom = (nil) thread_stack 0x40000
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /lib/libpthread
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: /lib/libc.
Jul 22 15:54:38 filt01 mysqld: /usr/sbin/
Jul 22 15:54:38 filt01 mysqld: The manual page at http://
Jul 22 15:54:38 filt01 mysqld: information that should help you find out what is causing the crash.
Jul 22 15:54:38 filt01 mysqld: Writing a core file
Jul 22 15:54:38 filt01 mysqld_safe: mysqld from pid file /var/run/
====
We have 1 table in Aria format. As soon as we move out the Aria table files, MariaDB starts fine again.
I've uploaded a copy of such a corrupt Aria table to the MariaDB FTP server (private folder).
Related branches
Changed in maria: | |
assignee: | nobody → Michael Widenius (monty) |
importance: | Undecided → High |
status: | New → In Progress |
Changed in maria: | |
status: | Fix Committed → Fix Released |
I am uploading the test case just now.
Note that to fix a recovery problem, I would need the following files:
- The table files (.MAI, .MAD and .frm)
- The aria_log_control file
- The aria log files (aria_log.*)
- Optionally the aria_recovery.trace file
I will come back to you if the tar file doesn't contain all of the above files.