below is some information forwarded w/permission from tero ripattila. executive summary is that the problem seems to have something to do with innodb and tls not getting along together.
a temporary workaround is provided below, but not verified by myself. sean ----- Forwarded message from Tero Ripattila <[EMAIL PROTECTED]> ----- Date: Sat, 19 Nov 2005 15:05:41 +0200 From: Tero Ripattila <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Subject: Status of bug #324216 Hello Sean, I'd like to kindly ask what's status of the bug #324216,<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=324216>? I having same difficulties here as described in the bug log and I cannot solve this issue on my own. Actually I got the sig 11 too. Here comes output of my ldd: $ ldd /usr/sbin/mysqld librt.so.1 => /lib/tls/librt.so.1 (0x4001d000) libz.so.1 => /usr/lib/libz.so.1 (0x40023000) libwrap.so.0 => /lib/libwrap.so.0 (0x40035000) libdl.so.2 => /lib/tls/libdl.so.2 (0x4003e000) libpthread.so.0 => /lib/tls/libpthread.so.0 (0x40042000) libcrypt.so.1 => /lib/tls/libcrypt.so.1 (0x40051000) libnsl.so.1 => /lib/tls/libnsl.so.1 (0x4007e000) libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40092000) libm.so.6 => /lib/tls/libm.so.6 (0x4014c000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x4016e000) libc.so.6 => /lib/tls/libc.so.6 (0x40177000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) I'm quite new to Debian as I've been using only OpenBSD for past four years. Looking forward to hearing from you soon. Regards, Tero -- Tero Ripattila ----- End forwarded message ----- ----- Forwarded message from Tero Ripattila <[EMAIL PROTECTED]> ----- Date: Sat, 19 Nov 2005 17:25:52 +0200 From: Tero Ripattila <[EMAIL PROTECTED]> To: [EMAIL PROTECTED], [EMAIL PROTECTED] Subject: Strace indicates that InnoDB support is broken (Was: Re: Status of bug #324216) Hello guys, sorry for spamming you, but I'd like to let you know that this crash may have been caused by InnoDB routines. Please see the following strace: execve("/usr/sbin/mysqld", ["/usr/sbin/mysqld", "--basedir=/usr", "--datadir=/var/lib/mysql", "--user=mysql", "--pid-file=/var/run/mysqld/mysqld.pid", "--skip-locking", "--port=3306", "--socket=/var/run/mysqld/mysqld.sock"], [/* 18 vars */]) = 0 set_thread_area({entry_number:-1 -> 0, base_addr:0x402acd20, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 123 InnoDB: The first specified data file ./ibdata1 did not exist: InnoDB: a new database to be created! 051119 17:04:09 InnoDB: Setting file ./ibdata1 size to 10 MB InnoDB: Database physically writes the file full: wait... 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=0 read_buffer_size=131072 max_used_connections=0 max_connections=100 threads_connected=0 It is possible that mysqld could use up to key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections = 217599 K bytes of memory Hope that's ok; if not, decrease some variables in the equation. thd=(nil) 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=0x425d27d8, backtrace may not be correct. Stack range sanity check OK, backtrace follows: 0x81893bf 0x4004caf8 (nil) 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 The manual page at http://www.mysql.com/doc/en/Crashing.html contains information that should help you find out what is causing the crash. - - - Answers to some of Seans questions: - is the partition contianing /var/log/mysql full or otherwise not writable? No, there's 1,3G available. - is the directory /var/log/mysql writable by the mysql user? Yep, please see the following: ls -l /var/log |grep mysql drwxr-s--- 2 mysql adm 4096 Nov 19 17:04 mysql -rw-r----- 1 mysql adm 0 Nov 19 14:27 mysql.err -rw-r----- 1 mysql adm 0 Nov 19 14:27 mysql.log - do you have old_passwords = 1 in /etc/mysql/my.cnf? Yep. I haven't modified the default my.cnf any way. - - - I attached the output of /etc/init.d/mysql start to this message. Output of ldd /usr/sbin/mysqld is already sent to you. - do you use anything nonstandard in nsswitch.conf (ldap, nis)? No. - are you running mysql in any kind of chroot/jail? No. - any other non-default settings in my.cnf? No. Is there anything else you need to know? Regards, Tero --On 19. marraskuuta 2005 16:34 +0200 Tero Ripattila <[EMAIL PROTECTED]> wrote: [snip] -- Tero Ripattila Extremia Ky + set -e + set -u + test -x /usr/sbin/mysqld +++ dirname /etc/init.d/mysql ++ cd /etc/init.d ++ pwd -P ++ basename /etc/init.d/mysql + SELF=/etc/init.d/mysql + CONF=/etc/mysql/my.cnf + MYADMIN='/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf' + ERR_LOGGER='logger -p daemon.err -t /etc/init.d/mysql -i' + cd / + umask 077 + export PATH=/bin:/usr/bin + PATH=/bin:/usr/bin + export HOME=/etc/mysql/ + HOME=/etc/mysql/ + case "${1:-''}" in + '[' '!' -r /etc/mysql/my.cnf ']' + echo -n 'Starting MySQL database server: mysqld' Starting MySQL database server: mysqld+ mysqld_status check_alive nowarn ++ /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping + ping_output='/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!' + ping_alive=0 + ps_alive=0 ++ mysqld_get_param pid-file ++ /usr/sbin/mysqld --print-defaults ++ tr ' ' '\n' ++ grep -- --pid-file ++ tail -n 1 ++ cut -d= -f2 + pidfile=/var/run/mysqld/mysqld.pid + '[' -f /var/run/mysqld/mysqld.pid ']' + '[' check_alive = check_alive -a 0 = 1 ']' + '[' check_alive = check_dead -a 0 = 0 -a 0 = 0 ']' + '[' nowarn = warn ']' + return 1 + /usr/bin/mysqld_safe + for i in 1 2 3 4 5 6 + sleep 1 + mysqld_status check_alive nowarn ++ /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping + ping_output='/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!' + ping_alive=0 + ps_alive=0 ++ mysqld_get_param pid-file ++ /usr/sbin/mysqld --print-defaults ++ tr ' ' '\n' ++ grep -- --pid-file ++ tail -n 1 ++ cut -d= -f2 + pidfile=/var/run/mysqld/mysqld.pid + '[' -f /var/run/mysqld/mysqld.pid ']' + '[' check_alive = check_alive -a 0 = 1 ']' + '[' check_alive = check_dead -a 0 = 0 -a 0 = 0 ']' + '[' nowarn = warn ']' + return 1 + for i in 1 2 3 4 5 6 + sleep 1 + mysqld_status check_alive nowarn ++ /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping + ping_output='/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!' + ping_alive=0 + ps_alive=0 ++ mysqld_get_param pid-file ++ /usr/sbin/mysqld --print-defaults ++ tr ' ' '\n' ++ grep -- --pid-file ++ tail -n 1 ++ cut -d= -f2 + pidfile=/var/run/mysqld/mysqld.pid + '[' -f /var/run/mysqld/mysqld.pid ']' + '[' check_alive = check_alive -a 0 = 1 ']' + '[' check_alive = check_dead -a 0 = 0 -a 0 = 0 ']' + '[' nowarn = warn ']' + return 1 + for i in 1 2 3 4 5 6 + sleep 1 + mysqld_status check_alive nowarn ++ /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping + ping_output='/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!' + ping_alive=0 + ps_alive=0 ++ mysqld_get_param pid-file ++ tr ' ' '\n' ++ grep -- --pid-file ++ cut -d= -f2 ++ /usr/sbin/mysqld --print-defaults ++ tail -n 1 + pidfile=/var/run/mysqld/mysqld.pid + '[' -f /var/run/mysqld/mysqld.pid ']' + '[' check_alive = check_alive -a 0 = 1 ']' + '[' check_alive = check_dead -a 0 = 0 -a 0 = 0 ']' + '[' nowarn = warn ']' + return 1 + for i in 1 2 3 4 5 6 + sleep 1 + mysqld_status check_alive nowarn ++ /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping + ping_output='/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!' + ping_alive=0 + ps_alive=0 ++ mysqld_get_param pid-file ++ /usr/sbin/mysqld --print-defaults ++ tr ' ' '\n' ++ grep -- --pid-file ++ tail -n 1 ++ cut -d= -f2 + pidfile=/var/run/mysqld/mysqld.pid + '[' -f /var/run/mysqld/mysqld.pid ']' + '[' check_alive = check_alive -a 0 = 1 ']' + '[' check_alive = check_dead -a 0 = 0 -a 0 = 0 ']' + '[' nowarn = warn ']' + return 1 + for i in 1 2 3 4 5 6 + sleep 1 + mysqld_status check_alive nowarn ++ /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping + ping_output='/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!' + ping_alive=0 + ps_alive=0 ++ mysqld_get_param pid-file ++ /usr/sbin/mysqld --print-defaults ++ tr ' ' '\n' ++ grep -- --pid-file ++ tail -n 1 ++ cut -d= -f2 + pidfile=/var/run/mysqld/mysqld.pid + '[' -f /var/run/mysqld/mysqld.pid ']' + '[' check_alive = check_alive -a 0 = 1 ']' + '[' check_alive = check_dead -a 0 = 0 -a 0 = 0 ']' + '[' nowarn = warn ']' + return 1 + for i in 1 2 3 4 5 6 + sleep 1 + mysqld_status check_alive nowarn ++ /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping + ping_output='/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!' + ping_alive=0 + ps_alive=0 ++ mysqld_get_param pid-file ++ /usr/sbin/mysqld --print-defaults ++ tr ' ' '\n' ++ grep -- --pid-file ++ tail -n 1 ++ cut -d= -f2 + pidfile=/var/run/mysqld/mysqld.pid + '[' -f /var/run/mysqld/mysqld.pid ']' + '[' check_alive = check_alive -a 0 = 1 ']' + '[' check_alive = check_dead -a 0 = 0 -a 0 = 0 ']' + '[' nowarn = warn ']' + return 1 + mysqld_status check_alive warn ++ /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping + ping_output='/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!' + ping_alive=0 + ps_alive=0 ++ mysqld_get_param pid-file ++ /usr/sbin/mysqld --print-defaults ++ grep -- --pid-file ++ tail -n 1 ++ cut -d= -f2 ++ tr ' ' '\n' + pidfile=/var/run/mysqld/mysqld.pid + '[' -f /var/run/mysqld/mysqld.pid ']' + '[' check_alive = check_alive -a 0 = 1 ']' + '[' check_alive = check_dead -a 0 = 0 -a 0 = 0 ']' + '[' warn = warn ']' + /bin/echo -e '0 processes alive and '\''/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping'\'' resulted in\n/usr/bin/mysqladmin: connect to server at '\''localhost'\'' failed error: '\''Can'\''t connect to local MySQL server through socket '\''/var/run/mysqld/mysqld.sock'\'' (111)'\'' Check that mysqld is running and that the socket: '\''/var/run/mysqld/mysqld.sock'\'' exists!\n' + logger -p daemon.err -t /etc/init.d/mysql -i -p daemon.debug + return 1 + echo ...failed. ...failed. + /bin/echo -e '\tPlease take a look at the syslog.' Please take a look at the syslog. + /usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf variables /usr/bin/mysqladmin: connect to server at 'localhost' failed error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)' Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists! + egrep -q 'have_bdb.*YES' ----- End forwarded message ----- ----- Forwarded message from Tero Ripattila <[EMAIL PROTECTED]> ----- Date: Mon, 21 Nov 2005 11:26:30 +0300 (Etc/GMT) Subject: Re: Strace indicates that InnoDB support is broken (Was: Re: Status of bug #324216) From: Tero Ripattila <[EMAIL PROTECTED]> To: [EMAIL PROTECTED], [EMAIL PROTECTED] Hello guys, I managed to solve this issue. This is what I did: 1) I removed glibc's tls $ rm -rf /lib/tls and 2) Made sure that when I install new software in the future, tls won't get installed again: I added the following block to /etc/apt/apt.conf file. DPkg { Post-Invoke { "rm -rf /lib/tls"; }; }; -- Tero Ripattila ----- End forwarded message ----- ----- Forwarded message from Tero Ripattila <[EMAIL PROTECTED]> ----- Date: Mon, 21 Nov 2005 12:25:05 +0300 (Etc/GMT) Subject: Re: Strace indicates that InnoDB support is broken (Was: Re: Status of bug #324216) From: Tero Ripattila <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Hello Sean, On Mon, November 21, 2005 12:20, sean finney wrote: > hi tero, > > sorry for the delay in response, been kinda busy the past week or two. > NP. I'm glad you responded to my email. > On Mon, Nov 21, 2005 at 11:26:30AM +0300, Tero Ripattila wrote: >> Hello guys, I managed to solve this issue. This is what I did: >> >> 1) >> I removed glibc's tls >> $ rm -rf /lib/tls > > very interesting, so it's not a problem with innodb, per se, but innodb > and tls? Yep, both I think. This crash happens when mysqld initializes the InnoDB related files. It tries to create a file called ib_logfile1, which should be of size 10M, but mysqld already crashes when it have finished only 8,5M. > i'd hardly call this a "solution", but maybe it's an > acceptable workaround in the meantime :) > Yeah. This lets me actually do something with the database :-) > if it's okay with you, i'd like to forward your past three emails to the > bts, and maybe further onwards to mysql.com. > NP, go ahead. > > sean > -- Tero Ripattila ----- End forwarded message ----- --
signature.asc
Description: Digital signature