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 -----

-- 

Attachment: signature.asc
Description: Digital signature

Reply via email to