|
List Info
Thread: mysqld - innodb, pthread_mutex_unlock
|
|
| mysqld - innodb, pthread_mutex_unlock |

|
2006-01-30 02:47:18 |
Hi,
I have some problems with mysqld 5.0.18 (pkgsrc-2005Q4 with
current
databases/mysql5-client and databases/mysql5-server) on an
amd64 (one
Xeon) machine. The daemon refuses to start if it's
configured to run
innodb engine and there are the innodb files present in
mysql data
directory (it starts correctly only when it initially
creates the innodb
files, subsequent restart again fails). It is possible to
start it
correctly with "--skip-innodb", but once I also
got:
mysqld: Error detected by libpthread: Invalid mutex.
Detected by file
"/home/builds/ab/netbsd-3-0-RELEASE/src/lib/libpthread/
pthread_mutex.c",
line 334, function "pthread_mutex_unlock".
See pthread(3) for information.
Do you have any idea what could be wrong? (u)limits are
stretched to
maximum for the process so this shouldn't be the problem.
It's NetBSD
3.0, amd64, 2G RAM, slightly modified GENERIC kernel.
Thanks,
r.
|
|
| mysqld - innodb, pthread_mutex_unlock |

|
2006-01-30 06:04:24 |
On Mon, 30 Jan 2006 03:47:18 +0100
rudolf <netbsd eq.cz> wrote:
> Hi,
>
> I have some problems with mysqld 5.0.18 (pkgsrc-2005Q4
with current
> databases/mysql5-client and databases/mysql5-server) on
an amd64 (one
> Xeon) machine. The daemon refuses to start if it's
configured to run
> innodb engine and there are the innodb files present in
mysql data
> directory (it starts correctly only when it initially
creates the
> innodb files, subsequent restart again fails). It is
possible to
> start it correctly with "--skip-innodb", but
once I also got:
>
> mysqld: Error detected by libpthread: Invalid mutex.
> Detected by file
>
"/home/builds/ab/netbsd-3-0-RELEASE/src/lib/libpthread/
pthread_mutex.c",
> line 334, function "pthread_mutex_unlock".
> See pthread(3) for information.
>
> Do you have any idea what could be wrong? (u)limits are
stretched to
> maximum for the process so this shouldn't be the
problem. It's NetBSD
> 3.0, amd64, 2G RAM, slightly modified GENERIC kernel.
For unknown reasons mysql is trying to unlock an invalid
mutex,
the pthread library detects it and refuses to start.
As a workaround you can use the environment
variable "PTHREAD_DIAGASSERT=AE" to ignore and do
not log the errors
to stdout (see pthread(3)).
Can you please tell me how to get this error? I'll try to
fix mysql
properly.
|
|
| mysqld - innodb, pthread_mutex_unlock |

|
2006-01-30 12:04:05 |
Juan RP wrote:
> On Mon, 30 Jan 2006 03:47:18 +0100
> rudolf <netbsd eq.cz> wrote:
>
>
>>Hi,
>>
>>I have some problems with mysqld 5.0.18
(pkgsrc-2005Q4 with current
>>databases/mysql5-client and databases/mysql5-server)
on an amd64 (one
>>Xeon) machine. The daemon refuses to start if it's
configured to run
>>innodb engine and there are the innodb files present
in mysql data
>>directory (it starts correctly only when it
initially creates the
>>innodb files, subsequent restart again fails). It is
possible to
>>start it correctly with "--skip-innodb",
but once I also got:
>>
>>mysqld: Error detected by libpthread: Invalid mutex.
>>Detected by file
>>"/home/builds/ab/netbsd-3-0-RELEASE/src/lib/lib
pthread/pthread_mutex.c",
>>line 334, function "pthread_mutex_unlock".
>>See pthread(3) for information.
>>
>>Do you have any idea what could be wrong? (u)limits
are stretched to
>>maximum for the process so this shouldn't be the
problem. It's NetBSD
>>3.0, amd64, 2G RAM, slightly modified GENERIC
kernel.
>
>
> For unknown reasons mysql is trying to unlock an
invalid mutex,
> the pthread library detects it and refuses to start.
>
> As a workaround you can use the environment
> variable "PTHREAD_DIAGASSERT=AE" to ignore
and do not log the errors
> to stdout (see pthread(3)).
>
> Can you please tell me how to get this error? I'll try
to fix mysql
> properly.
>
Unfortunately I can't reproduce it. It happened only once,
probably
during database shutdown (if the log output is properly
ordered). The
full (from start to end) log context is:
060430 03:04:29 Starting mysqld daemon with databases from
/var/mysql
060430 03:04:29 mysqld started
060130 3:04:29 [Note] /usr/pkg/libexec/mysqld: ready for
connections.
Version: '5.0.18' socket: '/var/run/mysql/mysql.sock'
port: 3306
Source distribution
060130 3:04:43 [Note] /usr/pkg/libexec/mysqld: Normal
shutdown
060130 3:04:44 [Note] /usr/pkg/libexec/mysqld: Shutdown
complete
mysqld: Error detected by libpthread: Invalid mutex.
Detected by file
"/home/builds/ab/netbsd-3-0-RELEASE/src/lib/libpthread/
pthread_mutex.c",
line 334, function "pthread_mutex_unlock".
See pthread(3) for information.
060430 03:04:44 STOPPING server from pid file
/var/mysql/server.pid
060430 03:04:44 mysqld ended
This was without the innodb engine, otherwise the creation
of the innodb
files is in the log too. And with the innodb engine and
files in the
mysql data directory it doesn't start at all, as I already
wrote. I'll
keep trying to find out what's wrong with the innodb engine.
Regards,
r.
|
|
| mysqld - innodb, pthread_mutex_unlock |

|
2006-01-30 17:05:27 |
rudolf wrote:
> Juan RP wrote:
>
>> On Mon, 30 Jan 2006 03:47:18 +0100
>> rudolf <netbsd eq.cz> wrote:
>>
>>
>>> Hi,
>>>
>>> I have some problems with mysqld 5.0.18
(pkgsrc-2005Q4 with current
>>> databases/mysql5-client and
databases/mysql5-server) on an amd64 (one
>>> Xeon) machine. The daemon refuses to start if
it's configured to run
>>> innodb engine and there are the innodb files
present in mysql data
>>> directory (it starts correctly only when it
initially creates the
>>> innodb files, subsequent restart again fails).
It is possible to
>>> start it correctly with
"--skip-innodb", but once I also got:
>>>
>>> mysqld: Error detected by libpthread: Invalid
mutex.
>>> Detected by file
>>>
"/home/builds/ab/netbsd-3-0-RELEASE/src/lib/libpthread/
pthread_mutex.c",
>>> line 334, function
"pthread_mutex_unlock".
>>> See pthread(3) for information.
>>>
>>> Do you have any idea what could be wrong?
(u)limits are stretched to
>>> maximum for the process so this shouldn't be
the problem. It's NetBSD
>>> 3.0, amd64, 2G RAM, slightly modified GENERIC
kernel.
>>
>>
>>
>> For unknown reasons mysql is trying to unlock an
invalid mutex,
>> the pthread library detects it and refuses to
start.
[...]
I made two ktruss outputs:
# ktruss -i /usr/pkg/bin/mysqld_safe --user=mysql
--datadir=/var/mysql
--pid-file=/var/mysql/`/bin/hostname`.pid >>
/tmp/file.ktruss
http://ttt.eq.cz/my
sqld_ok.ktruss
at the beginning there are no /var/mysql/ib* files - mysqld
starts
without problems, creating the innodb files at startup
http://ttt.eq.c
z/mysqld_sigill.ktruss
the /var/mysql/ib* files are already created, mysqld gets
sigill when it
pread's ehmm ... something
Thoughts?
r.
|
|
[1-4]
|
|