| Summary: | dev-db/mysql-administrator error *** glibc detected *** free(): invalid pointer: 0x081d90e0 *** | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Colin Tinker <g1gsw> |
| Component: | Current packages | Assignee: | Sven Wegener <swegener> |
| Status: | RESOLVED TEST-REQUEST | ||
| Severity: | normal | CC: | alcino, bertrand, bugs.gentoo.org, drakos7, dsomers, farcepest, gentoo |
| Priority: | High | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Attachments: |
strace of mysql-administrator
Another mysql-administrator strace strace of mysql-administrator with glibc-2.3.5 compiled w/out nptl dev-db/mysql-administrator/mysql-administrator-1.1.4.ebuild dev-db/mysql-query-browser/mysql-query-browser-1.1.17.ebuild |
||
|
Description
Colin Tinker
2004-10-23 07:12:35 UTC
I received that error several times myself. But haven't found the cause for it. Created attachment 42456 [details]
strace of mysql-administrator
strace when running mysql-administrator
Created attachment 43196 [details]
Another mysql-administrator strace
The strace on my machine looks quite a bit different than the one posted
above... same result though -- Segmentation fault.
free(): invalid pointer 0x81e6128!
free(): invalid pointer 0x81e6140!
Segmentation fault
Do these messages still appear with dev-db/mysql-administrator-1.0.18? Waiting for response. Still get the same error. Sorry for not replying before but it has been 2 months. mysql-administrator *** glibc detected *** free(): invalid pointer: 0x081fa0e0 *** /usr/bin/mysql-administrator: line 9: 28232 Aborted $MYPATH/mysql-administrator-bin I didn't receive this message for ages. Even using MALLOC_CHECK_=2 I didn't get any abnormal message. I'm sorry, but currently I'm not able to reproduce this. If you're familar with gdb, can you give me a backtrace? You need to emerge mysql-administrator with FEATURES="nostrip" and CFLAGS="-ggdb3" to include debugging information in the binary. The problem disappeared for me when i recompiled glibc with nptl support and then recompiled mysql-administrator. Note: You have to export MA_DIR=/usr/bin for this to work:
$ gdb mysql-administrator-bin
GNU gdb 6.2.1
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /usr/bin/mysql-administrator-bin
[Thread debugging using libthread_db enabled]
[New Thread -1225591120 (LWP 20293)]
*** glibc detected *** free(): invalid pointer: 0x082100e0 ***
Program received signal SIGABRT, Aborted.
[Switching to Thread -1225591120 (LWP 20293)]
0xffffe410 in ?? ()
Current language: auto; currently c
(gdb) bt
#0 0xffffe410 in ?? ()
#1 0xbfffe9d8 in ?? ()
#2 0x00000006 in ?? ()
#3 0x00004f45 in ?? ()
#4 0xb7269eb1 in *__GI_raise (sig=6)
at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#5 0xb726b4f1 in *__GI_abort () at ../sysdeps/generic/abort.c:88
#6 0xb729cd1a in __libc_message (do_abort=2,
fmt=0xb7347758 "*** glibc detected *** %s: 0x%s ***\n")
at ../sysdeps/unix/sysv/linux/libc_fatal.c:145
#7 0xb72a262b in malloc_printerr (action=2,
str=0xb7344ed8 "free(): invalid pointer", ptr=0x0) at malloc.c:5523
#8 0xb72a305a in *__GI___libc_free (mem=0x82100e0) at malloc.c:3404
#9 0xb73fe15d in operator delete (ptr=0x0)
at /var/tmp/portage/gcc-3.4.3.20050110/work/gcc-3.4.3/libstdc++-v3/libsupc++/del_op.cc:40
#10 0xb73df3ff in std::string::_Rep::_M_destroy (this=0x0, __a=@0xbfffecb0)
at new_allocator.h:86
#11 0x08161d92 in MGOptions::get_user_config_dir (this=0x0)
at basic_string.h:218
#12 0x08161e24 in MGOptions::build_path_to (this=0x0, file=@0x0)
at MGPreferences.cc:68
#13 0x08161f28 in MGOptions::load (this=0x820eec0, file=@0xbffff140)
---Type <return> to continue, or q <return> to quit---
at MGPreferences.cc:94
#14 0x080c009a in main (argc=1, argv=0xbffff244) at new_allocator.h:62
(gdb) frame 13
#13 0x08161f28 in MGOptions::load (this=0x820eec0, file=@0xbffff140)
at MGPreferences.cc:94
94 MGPreferences.cc: No such file or directory.
in MGPreferences.cc
Current language: auto; currently c++
(gdb) print file
$1 = (const string &) @0xbffff140: {static npos = 4294967295,
_M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x82119bc "mysqla_options.xml"}}
MGPreferences.cc is in the mysql-gui-common/source/linux directory in the sources. After poking around in there a bit, I see it is looking for mysqla_options.xml in ~/.mysqlgui, and this file does exist for me. Removing the directory does not seem the change the error, nor does creating a new empty directory.
I don't really know C++ well enough to figure out what's going on here, but it looks like it's concatenating strings, and one is a NULL pointer.
Portage 2.0.51-r15 (default-linux/x86/2004.3, gcc-3.4.3, glibc-2.3.4.20050125-r0, 2.6.10-gentoo-r7 i686)
=================================================================
System uname: 2.6.10-gentoo-r7 i686 Intel(R) Pentium(R) 4 CPU 2.00GHz
Gentoo Base System version 1.6.9
Python: dev-lang/python-2.4-r2,dev-lang/python-2.1.3-r1,dev-lang/python-2.2.3-r5,dev-lang/python-2.3.4 [2.3.4 (#1, Jul 30 2004, 09:49:24)]
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python: 2.4-r2, 2.1.3-r1, 2.2.3-r5, 2.3.4
sys-devel/autoconf: 2.59-r6, 2.13
sys-devel/automake: 1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4
sys-devel/binutils: 2.15.92.0.2-r4
sys-devel/libtool: 1.5.10-r5
virtual/os-headers: 2.6.8.1-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium4 -falign-labels=8 -falign-functions=64 -O2 -g -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/alias /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium4 -falign-labels=8 -falign-functions=64 -O2 -g -pipe"
DISTDIR="/var/cache/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks nostrip sandbox sfperms"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_US.UTF-8"
MAKEOPTS="-j2"
PKGDIR="/var/cache/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/var/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X adns alsa apm avi berkdb bitmap-fonts bonobo cdr crypt cscope cups curl doc dvd emacs emboss encode esd f77 fam flac font-server foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 gtkhtml guile i8x0 imagemagick imlib innodb ipv6 java jpeg ldap libg++ libwww mad maildir mikmod mmx motif mozilla mpeg mysql ncurses nls nptl offensive oggvorbis opengl oss pam pcre pdflib perl png python qt quicktime readline samba sdl slang snmp speex spell sse ssl tcltk tcpd tetex tiff tktcl truetype truetype-fonts type1-fonts xml xml2 xmms xv zlib"
Unset: ASFLAGS, CBUILD, CTARGET, LC_ALL, LDFLAGS
*** Bug 84917 has been marked as a duplicate of this bug. *** I'm getting this too. *** glibc detected *** free(): invalid pointer: 0x00000000006cd358 *** /usr/bin/mysql-administrator: line 9: 21128 Aborted $MYPATH/mysql-administrator-bin Have tried re-emerging. Have tried exporting the path. no success. Emerge info ------------------------------------------------------------------ doc@wakko opt $ sudo emerge info Password: Portage 2.0.51.19 (default-linux/amd64/2004.3, gcc-3.4.3, glibc-2.3.4.20041102-r0, 2.6.9-gentoo-r14 x86_64) ================================================================= System uname: 2.6.9-gentoo-r14 x86_64 AMD Athlon(tm) 64 Processor 3000+ Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Feb 7 2005, 10:05:54)] dev-lang/python: 2.3.4-r1 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.8.5-r3, 1.7.9-r1, 1.5, 1.6.3, 1.4_p6, 1.9.4 sys-devel/binutils: 2.15.92.0.2-r1 sys-devel/libtool: 1.5.10-r4 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CFLAGS="-O2" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox" GENTOO_MIRRORS="ftp:///ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://ftp.easynet.nl/mirror/gentoo/ http://gentoo.tiscali.nl/gentoo/ http://www.gigaload.org/gentoo.org/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 X acpi alsa arts berkdb bitmap-fonts cdr crypt cups curl curlwrapper esd fam flac font-server fortran gdbm gif gpm gtk imlib java jp2 jpeg junit kde libwww lzw lzw-tiff mad mikmod motif mozilla mp3 mysql ncurses nls oggvorbis opengl oss pam pdflib perl png python qt readline samba sdl slang ssl tcltk tcpd tiff truetype truetype-fonts type1-fonts usb userlocales xml xml2 xmms xpm xrandr xv zlib" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY ------------------------------------------------------------------ Strace output ------------------------------------------------------------------ doc@wakko opt $ strace mysql-administrator execve("/usr/bin/mysql-administrator", ["mysql-administrator"], [/* 51 vars */]) = 0 uname({sys="Linux", node="wakko", ...}) = 0 brk(0) = 0x5ba000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a9556b000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=102406, ...}) = 0 mmap(NULL, 102406, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2a9556c000 close(3) = 0 open("/lib/libdl.so.2", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\17\0"..., 640) = 640lseek(3, 624, SEEK_SET) = 624 read(3, "\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\2\0\0\0\4\0\0\0"..., 32) = 32 fstat(3, {st_mode=S_IFREG|0755, st_size=11480, ...}) = 0 mmap(NULL, 1056984, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2a9566c000 mprotect(0x2a9566e000, 1048792, PROT_NONE) = 0 mmap(0x2a9576c000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0) = 0x2a9576c000 close(3) = 0 open("/lib/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\316"..., 640) = 640 lseek(3, 624, SEEK_SET) = 624 read(3, "\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\2\0\0\0\4\0\0\0"..., 32) = 32 fstat(3, {st_mode=S_IFREG|0755, st_size=1270528, ...}) = 0 mmap(NULL, 2250248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2a9576f000 mprotect(0x2a9588b000, 1086984, PROT_NONE) = 0 mmap(0x2a9596f000, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x100000) = 0x2a9596f000 mmap(0x2a95990000, 17928, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2a95990000 close(3) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a95995000 mprotect(0x2a9598a000, 12288, PROT_READ) = 0 munmap(0x2a9556c000, 102406) = 0 open("/dev/urandom", O_RDONLY) = 3 read(3, "`\255\255\306$a\213\v", 8) = 8 close(3) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 open("/dev/tty", O_RDWR|O_NONBLOCK) = 3 close(3) = 0 brk(0) = 0x5ba000 brk(0x5db000) = 0x5db000 getuid() = 1001 getgid() = 100 geteuid() = 1001 getegid() = 100 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 open("/etc/mtab", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=331, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a9556c000 read(3, "/dev/sda9 / ext3 rw,noatime 0 0\n"..., 4096) = 331 close(3) = 0 munmap(0x2a9556c000, 4096) = 0 open("/proc/meminfo", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a9556c000 read(3, "MemTotal: 509724 kB\nMemFre"..., 1024) = 646 close(3) = 0 munmap(0x2a9556c000, 4096) = 0 rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8) = 0 uname({sys="Linux", node="wakko", ...}) = 0 stat("/opt", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 getpid() = 21139 getppid() = 21138 getpgrp() = 21138 rt_sigaction(SIGCHLD, {0x430ef0, [], 0x4000000}, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 open("/usr/bin/mysql-administrator", O_RDONLY) = 3 ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0x7fbffff010) = -1 ENOTTY (Inappropriate ioctl for device) lseek(3, 0, SEEK_CUR) = 0 read(3, "#!/bin/sh\n\nMYPATH=`dirname \"$0\"`"..., 80) = 80 lseek(3, 0, SEEK_SET) = 0 getrlimit(0x7, 0x7fbffff060) = 0 dup2(3, 255) = 255 close(3) = 0 fcntl(255, F_SETFD, FD_CLOEXEC) = 0 fcntl(255, F_GETFL) = 0x8000 (flags O_RDONLY|O_LARGEFILE|0x8000) fstat(255, {st_mode=S_IFREG|0755, st_size=125, ...}) = 0 lseek(255, 0, SEEK_CUR) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 read(255, "#!/bin/sh\n\nMYPATH=`dirname \"$0\"`"..., 125) = 125 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 pipe([3, 4]) = 0 rt_sigprocmask(SIG_BLOCK, [INT CHLD], [RTMIN], 8) = 0 lseek(255, -92, SEEK_CUR) = 33 fork() = 21140 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 --- SIGCHLD (Child exited) @ 0 (0) --- wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG, NULL) = 21140 wait4(-1, 0x7fbfffea74, WNOHANG, NULL) = -1 ECHILD (No child processes) rt_sigreturn(0xffffffffffffffff) = 0 rt_sigaction(SIGCHLD, {0x430ef0, [], 0x4000000}, {0x430ef0, [], 0x4000000}, 8) = 0 close(4) = 0 read(3, "/usr/bin\n", 128) = 9 read(3, "", 128) = 0 close(3) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [RTMIN], 8) = 0 rt_sigaction(SIGINT, {0x430060, [], 0x4000000}, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {0x430060, [], 0x4000000}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 read(255, "\nBASEPATH=`cd $MYPATH/.. ; pwd`\n"..., 125) = 92 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 pipe([3, 4]) = 0 rt_sigprocmask(SIG_BLOCK, [INT CHLD], [RTMIN], 8) = 0 lseek(255, -60, SEEK_CUR) = 65 fork() = 21141 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 --- SIGCHLD (Child exited) @ 0 (0) --- wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG, NULL) = 21141 wait4(-1, 0x7fbfffea74, WNOHANG, NULL) = -1 ECHILD (No child processes) rt_sigreturn(0xffffffffffffffff) = 0 rt_sigaction(SIGCHLD, {0x430ef0, [], 0x4000000}, {0x430ef0, [], 0x4000000}, 8) = 0 close(4) = 0 read(3, "/usr\n", 128) = 5 read(3, "", 128) = 0 close(3) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [RTMIN], 8) = 0 rt_sigaction(SIGINT, {0x430060, [], 0x4000000}, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {0x430060, [], 0x4000000}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 read(255, "\nexport MA_DIR=$BASEPATH\n\n$MYPAT"..., 125) = 60 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 rt_sigprocmask(SIG_BLOCK, [INT CHLD], [RTMIN], 8) = 0 lseek(255, -1, SEEK_CUR) = 124 fork() = 21142 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [RTMIN], 8) = 0 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [RTMIN], 8) = 0 rt_sigaction(SIGINT, {0x430060, [], 0x4000000}, {SIG_DFL}, 8) = 0 wait4(-1, *** glibc detected *** free(): invalid pointer: 0x00000000006cd358 ***[{WIFSIGNALED(s) && WTERMSIG(s) == SIGABRT}], 0, NULL) = 21142 fstat(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2a9556c000 write(2, "/usr/bin/mysql-administrator: li"..., 100/usr/bin/mysql-administrator: line 9: 21142 Aborted $MYPATH/mysql-administrator-bin ) = 100 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 --- SIGCHLD (Child exited) @ 0 (0) --- wait4(-1, 0x7fbfffed04, WNOHANG, NULL) = -1 ECHILD (No child processes) rt_sigreturn(0xffffffffffffffff) = 0 rt_sigaction(SIGINT, {SIG_DFL}, {0x430060, [], 0x4000000}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 read(255, "\n", 125) = 1 rt_sigprocmask(SIG_BLOCK, NULL, [RTMIN], 8) = 0 read(255, "", 125) = 0 munmap(0x2a9556c000, 4096) = 0 exit_group(134) = ? I don't know if this is the reason but it works when I change to mysql-4.1.8 (even if this is already old, the last is 4.1.10a). I don't know if mysql-administrator works different with the different version of mysql. adding my self to the unfortunates list :) I'm seeing this too. adam@aphrodite adam $ mysql-administrator *** glibc detected *** free(): invalid pointer: 0x081cc0f0 *** /usr/bin/mysql-administrator: line 9: 23903 Aborted $MYPATH/mysql-administrator-bin adam@aphrodite adam $ export MA_DIR=/usr/bin adam@aphrodite adam $ mysql-administrator *** glibc detected *** free(): invalid pointer: 0x081cc0f0 *** /usr/bin/mysql-administrator: line 9: 23903 Aborted $MYPATH/mysql-administrator-bin emerge info data: Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.4.3-20050110, glibc-2.3.5-r0, 2.6.11-gentoo-r3-kf1 i686) ================================================================= System uname: 2.6.11-gentoo-r3-kf1 i686 Intel(R) Celeron(R) CPU 2.53GHz Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.5 [2.3.5 (#1, May 7 2005, 15:15:35)] distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]ccache version 2.3 [enabled] dev-lang/python: 2.3.5 sys-apps/sandbox: [Not Present] sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.5, 1.8.5-r3, 1.9.5, 1.6.3, 1.7.9-r1, 1.4_p6 sys-devel/binutils: 2.15.92.0.2-r7 sys-devel/libtool: 1.5.16 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=pentium4 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/afs/C /etc/afs/afsws /etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -march=pentium4 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X Xaw3d aac aalib acl acpi afs alsa apache2 apm audiofile avi bash-completion berkdb bidi bitmap-fonts blas bonobo bzip2 bzlib caps cdparanoia cdr crypt cups curl dga divx4linux doc dts dv dvb dvd dvdr dvdread dxr3 edl eds emacs emacs-w3 emboss encode esd ethereal evo examples expat f2c fam ffmpeg firebird fits flac font-server foomaticdb fortran gcj gd gdbm ggi gif glitz glut gnome gnutls gphoto2 gpm gstreamer gtk gtk2 guile i8x0 icq icu idea imagemagick imap imlib innodb ipv6 jabber jack java javascript jikes jpeg jpeg2k junit jython kde kdeenablefinal kerberos krb4 lcms ldap libcaca libg++ libwww lm_sensors lzo mad mcal mikmod mng motif mozdevelop mozilla mozxmlterm mp3 mpeg mpi mysql mythtv nas ncurses netboot network nls nntp nptl nptlonly objc odbc offensive ogdi ogg oggvorbis openexr opengl oss pam parse-clocks pcre pda pdflib perl pg-hier pg-intdatetime plotutils png postgres povray ppds prelude python qt quicktime readline real rhino rrdtool rtc ruby samba sasl scanner sdl skey slang slp snmp source speex spell ssl startup-notification svga sysfs tcltk tcpd tetex tga theora tiff truetype truetype-fonts type1-fonts ucs2 unicode usb v4l v4l2 vhosts vidix vorbis win32codecs xanim xine xinerama xml xml2 xmms xprint xv xvid xvmc zeo zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS This is with version: adam@aphrodite adam $ epm -q mysql-administrator mysql-administrator-1.0.20 Same thing happens with version: adam@aphrodite adam $ epm -q mysql-administrator mysql-administrator-1.0.19-r1 adam@aphrodite adam $ mysql-administrator *** glibc detected *** free(): invalid pointer: 0x081cc0f0 *** /usr/bin/mysql-administrator: line 9: 30205 Aborted $MYPATH/mysql-administrator-bin I have glibc installed with this options: aphrodite root # emerge -av glibc These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild R ] sys-libs/glibc-2.3.5 -build -debug -erandom -hardened (-multilib) +nls -nomalloccheck +nptl +nptlonly -pic -userlocales 0 kB Total size of downloads: 0 kB I'll give it another try to reproduce it here. But on all systems I tried it was working fine. Must be some kind of special USE flags combination. I'll poke around a bit Based upon Comment #8, I recompiled glibc with the following use flags: ==================================== aphrodite root # emerge -av glibc These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild R ] sys-libs/glibc-2.3.5 -build -debug -erandom -hardened (-multilib) +nls -nomalloccheck +nptl -nptlonly -pic -userlocales 0 kB Total size of downloads: 0 kB Do you want me to merge these packages? [Yes/No] ========================================= (same use flags as before, except nptlonly is now gone) I then rebooted and remerged mysql-administrator. Unfortunately for me, the problem is still present: adam@aphrodite adam $ mysql-administrator *** glibc detected *** free(): invalid pointer: 0x081cc0f0 *** /usr/bin/mysql-administrator: line 9: 15919 Aborted $MYPATH/mysql-administrator-bin FWIW, just today I built mysql-administrator on a differnent machine (~ppc) and had no problems whatsoever. That machine is running glibc-2.3.4.20041102-r1 I wonder if the problem is in glibc-2.3.5? I'm hesitant to try downgrading my glibc because I'm not sure if something on the problematic box depends on that version. HTH. strace follows:
adam@aphrodite adam $ strace mysql-administrator
execve("/usr/bin/mysql-administrator", ["mysql-administrator"], [/* 59 vars */]) = 0
uname({sys="Linux", node="aphrodite", ...}) = 0
brk(0) = 0x80ca000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=163478, ...}) = 0
mmap2(NULL, 163478, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fc1000
close(3) = 0
open("/lib/libdl.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\v\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=10948, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7fc0000
mmap2(NULL, 12388, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7fbc000
mmap2(0xb7fbe000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xb7fbe000
close(3) = 0
open("/lib/tls/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0>P\1\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1334960, ...}) = 0
mmap2(NULL, 1244348, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7e8c000
mmap2(0xb7fb6000, 16384, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x129) = 0xb7fb6000
mmap2(0xb7fba000, 7356, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fba000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7e8b000
mprotect(0xb7fb6000, 4096, PROT_READ) = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e8b6c0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0,
useable:1}) = 0
munmap(0xb7fc1000, 163478) = 0
open("/dev/urandom", O_RDONLY) = 3
read(3, "\21U\252\366", 4) = 4
close(3) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
open("/dev/tty", O_RDWR|O_NONBLOCK|O_LARGEFILE) = 3
close(3) = 0
brk(0) = 0x80ca000
brk(0x80eb000) = 0x80eb000
getuid32() = 1000
getgid32() = 100
geteuid32() = 1000
getegid32() = 100
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
time(NULL) = 1116613902
open("/etc/mtab", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=478, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7fe8000
read(3, "/dev/hda5 / ext3 rw 0 0\nnone /pr"..., 4096) = 478
close(3) = 0
munmap(0xb7fe8000, 4096) = 0
open("/proc/meminfo", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7fe8000
read(3, "MemTotal: 1026212 kB\nMemFre"..., 1024) = 598
close(3) = 0
munmap(0xb7fe8000, 4096) = 0
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8) = 0
uname({sys="Linux", node="aphrodite", ...}) = 0
stat64("/home/adam", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
getpid() = 16013
getppid() = 16012
getpgrp() = 16012
rt_sigaction(SIGCHLD, {0x806f5bc, [], 0}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
open("/usr/bin/mysql-administrator", O_RDONLY|O_LARGEFILE) = 3
ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfffee50) = -1 ENOTTY (Inappropriate
ioctl for device)
_llseek(3, 0, [0], SEEK_CUR) = 0
read(3, "#!/bin/sh\n\nMYPATH=`dirname \"$0\"`"..., 80) = 80
_llseek(3, 0, [0], SEEK_SET) = 0
getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0
dup2(3, 255) = 255
close(3) = 0
fcntl64(255, F_SETFD, FD_CLOEXEC) = 0
fcntl64(255, F_GETFL) = 0x8000 (flags O_RDONLY|O_LARGEFILE)
fstat64(255, {st_mode=S_IFREG|0755, st_size=125, ...}) = 0
_llseek(255, 0, [0], SEEK_CUR) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(255, "#!/bin/sh\n\nMYPATH=`dirname \"$0\"`"..., 125) = 125
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
pipe([3, 4]) = 0
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
_llseek(255, -92, [33], SEEK_CUR) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0xb7e8b708) = 16014
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
--- SIGCHLD (Child exited) @ 0 (0) ---
waitpid(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG) = 16014
waitpid(-1, 0xbfffe890, WNOHANG) = -1 ECHILD (No child processes)
sigreturn() = ? (mask now [])
rt_sigaction(SIGCHLD, {0x806f5bc, [], 0}, {0x806f5bc, [], 0}, 8) = 0
close(4) = 0
read(3, "/usr/bin\n", 128) = 9
read(3, "", 128) = 0
close(3) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT, {0x806eab6, [], 0}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {0x806eab6, [], 0}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(255, "\nBASEPATH=`cd $MYPATH/.. ; pwd`\n"..., 125) = 92
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
pipe([3, 4]) = 0
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
_llseek(255, -60, [65], SEEK_CUR) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0xb7e8b708) = 16015
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
--- SIGCHLD (Child exited) @ 0 (0) ---
waitpid(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG) = 16015
waitpid(-1, 0xbfffe890, WNOHANG) = -1 ECHILD (No child processes)
sigreturn() = ? (mask now [])
rt_sigaction(SIGCHLD, {0x806f5bc, [], 0}, {0x806f5bc, [], 0}, 8) = 0
close(4) = 0
read(3, "/usr\n", 128) = 5
read(3, "", 128) = 0
close(3) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT, {0x806eab6, [], 0}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {0x806eab6, [], 0}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(255, "\nexport MA_DIR=$BASEPATH\n\n$MYPAT"..., 125) = 60
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
_llseek(255, -1, [124], SEEK_CUR) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0xb7e8b708) = 16016
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT, {0x806eab6, [], 0}, {SIG_DFL}, 8) = 0
waitpid(-1, *** glibc detected *** free(): invalid pointer: 0x081cc0f0 ***
[{WIFSIGNALED(s) && WTERMSIG(s) == SIGABRT}], 0) = 16016
fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7fe8000
write(2, "/usr/bin/mysql-administrator: li"..., 100/usr/bin/mysql-administrator:
line 9: 16016 Aborted $MYPATH/mysql-administrator-bin
) = 100
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
--- SIGCHLD (Child exited) @ 0 (0) ---
waitpid(-1, 0xbfffea68, WNOHANG) = -1 ECHILD (No child processes)
sigreturn() = ? (mask now [])
rt_sigaction(SIGINT, {SIG_DFL}, {0x806eab6, [], 0}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(255, "\n", 125) = 1
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(255, "", 125) = 0
munmap(0xb7fe8000, 4096) = 0
exit_group(134) = ?
adam@aphrodite adam $
(In reply to comment #9) > #11 0x08161d92 in MGOptions::get_user_config_dir (this=0x0) > at basic_string.h:218 > #12 0x08161e24 in MGOptions::build_path_to (this=0x0, file=@0x0) > at MGPreferences.cc:68 > #13 0x08161f28 in MGOptions::load (this=0x820eec0, file=@0xbffff140) > at MGPreferences.cc:94 > #14 0x080c009a in main (argc=1, argv=0xbffff244) at new_allocator.h:62 > (gdb) frame 13 > #13 0x08161f28 in MGOptions::load (this=0x820eec0, file=@0xbffff140) > at MGPreferences.cc:94 > 94 MGPreferences.cc: No such file or directory. > in MGPreferences.cc > Current language: auto; currently c++ > (gdb) print file > $1 = (const string &) @0xbffff140: {static npos = 4294967295, > _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0x82119bc "mysqla_options.xml"}} This is what looks really strange to me and seems to be the cause of it. Frame 13 shows that we've been called with this and file arguments. this is implicit the current instance of class MGOptions. In line 94 we call build_to_path and now this is NULL. In line 68 we call get_user_config_dir and this is again NULL. Code from MGPreferences.cc: 56 std::string MGOptions::get_user_config_dir() 57 { 58 std::string path=Glib::get_home_dir()+"/.mysqlgui"; 59 60 check_directory(path, true); 61 62 return path; 63 } 66 std::string MGOptions::build_path_to(const std::string &file) 67 { 68 return Glib::build_filename(get_user_config_dir(), file); 69 } 90 bool MGOptions::load(const std::string &file) 91 { 92 MYX_LIB_ERROR err; 93 MYX_APPLICATION_OPTIONS *options; 94 std::string path= build_path_to(file); 95 96 _store_path= file; 97 98 options= myx_get_application_options((char*)path.c_str(), &err); 99 if (!options) 100 return false; 101 102 process_options(options); 103 104 free_options(options); 105 106 return true; 107 } Created attachment 59407 [details]
strace of mysql-administrator with glibc-2.3.5 compiled w/out nptl
Still trying the shotgun approach for lack of any other ideas and impatience to resolve this problem. As the strace shows, after rebuilding glibc-2.3.5 with yet another use flag removed (nptl), then rebooting and remerging mysql-admininistrator yet again, I still have this problem. adam@aphrodite adam $ mysql-administrator *** glibc detected *** free(): invalid pointer: 0x081cc138 *** /usr/bin/mysql-administrator: line 9: 16171 Aborted $MYPATH/mysql-administrator-bin My inexpert opinion: I'm thinking something is broken in glibc-2.3.5 here. I'm running 2.3.5 myself and don't have the problem. I'm running mysql-4.1.8-r1 but according to the gdb backtraces the error is in some area that has nothing to do with the mysql library. And my USE flags for glibc are mostly the same you are all using: [ebuild R ] sys-libs/glibc-2.3.5 -build -debug -erandom -hardened (-multilib) +nls -nomalloccheck +nptl -nptlonly -pic +userlocales 0 kB Hey, I am having the same problem, and with mysql-query-browser too. I am not a C/C++ coder, but I am wondering if it could be something in the GTK libraries? My desktop is primarily KDE, though I have no grudges against gnome. So I ran an 'emerge -epv mysql-query-browser' and selected a few gnome related libraries to reemerge: emerge --oneshot -pv mysql orbit gtk+ gnome-libs pango libglade gtkmm libbonobo libgnomecanvas libgnome libbonoboui libgnomeui gtk-engines libgtkhtml which gave the interesting result: These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild U ] dev-db/mysql-4.1.12 [4.0.24] +berkdb -cluster -debug +doc -extraengine -geometry -minimal +perl +readline (-selinux) +ssl -static +tcpd +utf8* 0 kB [ebuild U ] dev-perl/DBD-mysql-2.9007 [2.9003] 114 kB [ebuild R ] gnome-base/orbit-2.12.1 -debug +doc +ssl 659 kB [ebuild R ] x11-libs/gtk+-2.6.4-r1 -debug +doc +jpeg -static +tiff 10,985 kB [ebuild R ] gnome-base/gnome-libs-1.4.2 +doc +kde +nls 2,807 kB [ebuild R ] x11-libs/pango-1.8.1 -debug +doc -static 973 kB [ebuild R ] gnome-base/libglade-2.4.2 -debug +doc 310 kB [ebuild NS ] dev-libs/libsigc++-2.0.11 -debug 1,401 kB [ebuild N ] dev-cpp/glibmm-2.4.7-r1 -debug +doc 791 kB [ebuild NS ] dev-cpp/gtkmm-2.4.11 -debug 3,837 kB [ebuild R ] gnome-base/libbonobo-2.8.1 -debug +doc 1,036 kB [ebuild R ] gnome-base/libgnomecanvas-2.8.0 -debug +doc 565 kB [ebuild R ] gnome-base/libgnome-2.8.1 -debug +doc 1,150 kB [ebuild R ] gnome-base/libbonoboui-2.8.1 -debug +doc 997 kB [ebuild R ] gnome-base/libgnomeui-2.8.1-r1 -debug +doc +jpeg 1,422 kB [ebuild R ] x11-themes/gtk-engines-2.2.0 1,072 kB [ebuild R ] gnome-extra/libgtkhtml-3.2.5 -debug 1,284 kB Note, there are a few libraries which are listed as dependencies and are not emerged (hmm, broken dependencies). Results after reemerging libraries: bummer. :( *** glibc detected *** free(): invalid pointer: 0x0820de70 *** /usr/bin/mysql-query-browser: line 9: 28714 Abortado $MYPATH/mysql-query-browser-bin /usr/bin/mysql-administrator: line 9: 30198 Falha de segmenta My desktop is primarily KDE, though I have no grudges against gnome. So I ran an 'emerge -epv mysql-query-browser' and selected a few gnome related libraries to reemerge: emerge --oneshot -pv mysql orbit gtk+ gnome-libs pango libglade gtkmm libbonobo libgnomecanvas libgnome libbonoboui libgnomeui gtk-engines libgtkhtml which gave the interesting result: These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild U ] dev-db/mysql-4.1.12 [4.0.24] +berkdb -cluster -debug +doc -extraengine -geometry -minimal +perl +readline (-selinux) +ssl -static +tcpd +utf8* 0 kB [ebuild U ] dev-perl/DBD-mysql-2.9007 [2.9003] 114 kB [ebuild R ] gnome-base/orbit-2.12.1 -debug +doc +ssl 659 kB [ebuild R ] x11-libs/gtk+-2.6.4-r1 -debug +doc +jpeg -static +tiff 10,985 kB [ebuild R ] gnome-base/gnome-libs-1.4.2 +doc +kde +nls 2,807 kB [ebuild R ] x11-libs/pango-1.8.1 -debug +doc -static 973 kB [ebuild R ] gnome-base/libglade-2.4.2 -debug +doc 310 kB [ebuild NS ] dev-libs/libsigc++-2.0.11 -debug 1,401 kB [ebuild N ] dev-cpp/glibmm-2.4.7-r1 -debug +doc 791 kB [ebuild NS ] dev-cpp/gtkmm-2.4.11 -debug 3,837 kB [ebuild R ] gnome-base/libbonobo-2.8.1 -debug +doc 1,036 kB [ebuild R ] gnome-base/libgnomecanvas-2.8.0 -debug +doc 565 kB [ebuild R ] gnome-base/libgnome-2.8.1 -debug +doc 1,150 kB [ebuild R ] gnome-base/libbonoboui-2.8.1 -debug +doc 997 kB [ebuild R ] gnome-base/libgnomeui-2.8.1-r1 -debug +doc +jpeg 1,422 kB [ebuild R ] x11-themes/gtk-engines-2.2.0 1,072 kB [ebuild R ] gnome-extra/libgtkhtml-3.2.5 -debug 1,284 kB Note, there are a few libraries which are listed as dependencies and are not emerged (hmm, broken dependencies). Results after reemerging libraries: bummer. :( *** glibc detected *** free(): invalid pointer: 0x0820de70 *** /usr/bin/mysql-query-browser: line 9: 28714 Abortado $MYPATH/mysql-query-browser-bin /usr/bin/mysql-administrator: line 9: 30198 Falha de segmentação $MYPATH/mysql-administrator-bin Update: It's still broke! However, it crashes in a new and interesting way: $ export MA_DIR=/usr/bin $ gdb mysql-administrator-bin GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i686-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1". gdb> run [Thread debugging using libthread_db enabled] [New Thread -1225529680 (LWP 5044)] *** glibc detected *** free(): invalid pointer: 0x081ee0e0 *** Program received signal SIGABRT, Aborted. [Switching to Thread -1225529680 (LWP 5044)] Error while running hook_stop: Invalid type combination in ordering comparison. 0xffffe410 in __kernel_vsyscall () gdb> bt #0 0xffffe410 in __kernel_vsyscall () #1 0xb7226a93 in raise () from /lib/libc.so.6 #2 0xb7321ff4 in ?? () from /lib/libc.so.6 #3 0xb6f3e6b0 in ?? () # to save space, deleting lines like this #4 0xb722866d in abort () from /lib/libc.so.6 #38 0xb6f2a448 in ?? () from /lib/libnss_nis.so.2 #43 0xb8000fd4 in ?? () from /lib/ld-linux.so.2 #44 0xb6f2a436 in ?? () from /lib/libnss_nis.so.2 #45 0xb7ff4d43 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2 #47 0xb7ff3c83 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2 #52 0xb80011c0 in _rtld_global () from /lib/ld-linux.so.2 #53 0xb7323800 in __after_morecore_hook () from /lib/libc.so.6 #54 0xb7321ff4 in ?? () from /lib/libc.so.6 #55 0xb7323800 in __after_morecore_hook () from /lib/libc.so.6 #58 0xb72613a2 in calloc () from /lib/libc.so.6 #61 0xb72284e4 in abort () from /lib/libc.so.6 #64 0xb725a616 in __fsetlocking () from /lib/libc.so.6 #67 0xb7362160 in ?? () from /usr/lib/gcc/i686-pc-linux-gnu/3.4.4/libstdc++.so.6#68 0xb7316360 in in6addr_loopback () from /lib/libc.so.6 #70 0xb7312eb4 in in6addr_loopback () from /lib/libc.so.6 #72 0xb7316379 in in6addr_loopback () from /lib/libc.so.6 #76 0xb731637f in in6addr_loopback () from /lib/libc.so.6 #79 0xb7ff2f05 in _dl_rtld_di_serinfo () from /lib/ld-linux.so.2 #81 0xb72b1153 in open () from /lib/libc.so.6 #82 0xb7316360 in in6addr_loopback () from /lib/libc.so.6 #87 0xb7316380 in in6addr_loopback () from /lib/libc.so.6 #93 0xb7321ff4 in ?? () from /lib/libc.so.6 #95 0xb7316360 in in6addr_loopback () from /lib/libc.so.6 #96 0xb7323800 in __after_morecore_hook () from /lib/libc.so.6 #97 0xb72633b6 in mallopt () from /lib/libc.so.6 #99 0xb7316360 in in6addr_loopback () from /lib/libc.so.6 #100 0xb7312eb4 in in6addr_loopback () from /lib/libc.so.6 #106 0xb7321ff4 in ?? () from /lib/libc.so.6 #107 0xb7312eb4 in in6addr_loopback () from /lib/libc.so.6 #109 0xb7261fa2 in mallopt () from /lib/libc.so.6 #111 0xb7312eb4 in in6addr_loopback () from /lib/libc.so.6 #113 0xb73afa6e in std::string::_M_mutate (this=Cannot access memory at address 0xfffffff1 ) at basic_string.tcc:391 Previous frame inner to this frame (corrupt stack?) gdb> This would seem to indicate some problem with IPv6 support. mysql-query-browser dies with the same sort of error message, but a very different stack trace, which I'm not including. My emerge info is as follows: Portage 2.0.51.22-r2 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r0, 2.6.11-gentoo-r11 i686) ================================================================= System uname: 2.6.11-gentoo-r11 i686 Intel(R) Pentium(R) 4 CPU 3.40GHz Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5, 2.4.1-r1 sys-apps/sandbox: 1.2.11 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium4 -falign-labels=8 -falign-functions=64 -O2 -g -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /var/cache /var/portage /var/tmp /etc/env.d" CXXFLAGS="-march=pentium4 -falign-labels=8 -falign-functions=64 -O2 -g -pipe" DISTDIR="/var/cache/distfiles" FEATURES="autoconfig distlocks nostrip sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" LANG="en_US.utf8" LC_ALL="en_US.utf8" MAKEOPTS="-j2" PKGDIR="/var/cache/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/var/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="x86 X aac alsa apm avi berkdb bitmap-fonts cdr crypt cups curl dvd dvdr eds emacs emboss encode esd fam firefox foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 imagemagick imlib ipv6 java jpeg ldap libg++ libwww mad maildir mikmod mmx motif mozilla mozsvg mp3 mpeg mysql ncurses nls nptl offensive ogg oggvorbis opengl pam pdflib perl png python qt quicktime readline samba sdl spell sse ssl svga tcltk tcpd tidy tiff truetype truetype-fonts type1-fonts vorbis win32codecs xml xml2 xmms xv zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LDFLAGS, LINGUAS Not sure if this is related or helpful - attemting to run this on amd64 and I get: mysql-administrator-bin: stack smashing attack in function myx_convert_utf8_dbstr() /usr/bin/mysql-administrator: line 18: 7935 Aborted $PRG-bin This is right after entering my password on the initial dialog box. Running 1.0.22a on mostly stable amd64. I'm not sure if this is related to this bug or not, but since I'm using -fstack-protector it could be that this error is a precursor to the problems described below. *** Bug 105610 has been marked as a duplicate of this bug. *** Here's a better GDB backtrace (version 1.1.2): *** glibc detected *** free(): invalid pointer: 0x081f10e0 *** #0 0xffffe410 in __kernel_vsyscall () #1 0xb705dd1d in *__GI_raise (sig=0x6) at raise.c:64 #2 0xb705f333 in *__GI_abort () at abort.c:88 #3 0xb7090b52 in __libc_message (do_abort=0x2, fmt=0xb713ba98 "*** glibc detected *** %s: 0x%s ***\n") at libc_fatal.c:145 #4 0xb7096497 in malloc_printerr (action=0x2, str=0xb713924b "free(): invalid pointer", ptr=0x0) at malloc.c:5523 #5 0xb7096e9b in *__GI___libc_free (mem=0x81f10e0) at malloc.c:3404 #6 0xb71f243d in operator delete (ptr=0x0) at /var/tmp/portage/gcc-3.4.4-r1/work/gcc-3.4.4/libstdc++-v3/libsupc++/del_op.cc:40 #7 0xb71d373b in std::string::_Rep::_M_destroy (this=0x0, __a=@0xbff5ab30) at new_allocator.h:86 #8 0x0813bec2 in MGOptions::get_user_config_dir (this=0x0) at basic_string.h:220 #9 0x0813bf24 in MGOptions::build_path_to (this=0x0, file=@0x0) at MGPreferences.cc:68 #10 0x0813c028 in MGOptions::load (this=0x81f04a0, file=@0xbff5afc0) at MGPreferences.cc:94 #11 0x0809055a in main (argc=0x1, argv=0xbff5b0c4) at new_allocator.h:62 Note that with the related mysql-query-browser-1.1.14, I get a slightly different error: *** glibc detected *** double free or corruption (out): 0x08225dc0 *** #0 0xffffe410 in __kernel_vsyscall () #1 0xb6b0dd1d in *__GI_raise (sig=0x6) at raise.c:64 #2 0xb6b0f333 in *__GI_abort () at abort.c:88 #3 0xb6b40b52 in __libc_message (do_abort=0x2, fmt=0xb6beba98 "*** glibc detected *** %s: 0x%s ***\n") at libc_fatal.c:145 #4 0xb6b46497 in malloc_printerr (action=0x2, str=0xb6bebb70 "double free or corruption (out)", ptr=0x0) at malloc.c:5523 #5 0xb6b46e9b in *__GI___libc_free (mem=0x8225dc0) at malloc.c:3404 #6 0xb6ca143d in operator delete (ptr=0x0) at /var/tmp/portage/gcc-3.4.4-r1/work/gcc-3.4.4/libstdc++-v3/libsupc++/del_op.cc:40 #7 0xb6c8273b in std::string::_Rep::_M_destroy (this=0x0, __a=@0xbfe29fb0) at new_allocator.h:86 #8 0x08150342 in MGOptions::get_user_config_dir (this=0x0) at basic_string.h:220 #9 0x081503a4 in MGOptions::build_path_to (this=0x0, file=@0x0) at MGPreferences.cc:68 #10 0x081504a8 in MGOptions::load (this=0x82232a0, file=@0xbfe2a210) at MGPreferences.cc:94 #11 0x0809f87f in main (argc=0x1, argv=0xbfe2a324) at new_allocator.h:62 Portage 2.0.52-r1 (default-linux/x86/2005.0, gcc-3.4.4, glibc-2.3.5-r1, 2.6.12-gentoo-r9 i686) ================================================================= System uname: 2.6.12-gentoo-r9 i686 Intel(R) Pentium(R) 4 CPU 3.40GHz Gentoo Base System version 1.12.0_pre8 dev-lang/python: 2.3.5, 2.4.1-r1 sys-apps/sandbox: 1.2.13 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium4 -falign-labels=8 -falign-functions=64 -O2 -g -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /var/cache /var/portage /var/tmp /etc/env.d" CXXFLAGS="-march=pentium4 -falign-labels=8 -falign-functions=64 -O2 -g -pipe" DISTDIR="/var/cache/distfiles" FEATURES="autoconfig distlocks nostrip sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" LANG="en_US.utf8" LC_ALL="en_US.utf8" MAKEOPTS="-j2" PKGDIR="/var/cache/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/var/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="x86 X aac alsa apm avi berkdb bitmap-fonts cdr crypt cups curl db2 dvd dvdr eds emacs emboss encode esd fam firefox foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 imagemagick imlib ipv6 java jpeg ldap libg++ libwww mad maildir mikmod mmx motif mozilla mozsvg mp3 mpeg mysql ncurses nls nptl odbc offensive ogg oggvorbis opengl openntpd pam pdflib perl png python quicktime readline samba sdl spell sse ssl svga tcltk tcpd tidy tiff truetype truetype-fonts type1-fonts vorbis win32codecs xml xml2 xmms xv zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LDFLAGS, LINGUAS Reporting in... same problem here. I'm running: Portage 2.0.51.22-r3 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.13-gentoo-r4 i686) Both mysql-query-browser and mysql-administrator... Created attachment 71338 [details]
dev-db/mysql-administrator/mysql-administrator-1.1.4.ebuild
Since MySQL-5.0.15 (first GA release) came out today, I decided to take another
stab at mysql-administrator. The announcement referenced a new version (1.1.4)
with MySQL-5.0 support, so I made this ebuild. Changes:
* Require gtkmm-2.4 or newer
* Discard patch for MySQL-4.1 compatibilty (no longer needed)
However, this fails late in the build with this error:
cd ../.. && /bin/sh
/var/tmp/portage/mysql-administrator-1.1.4/work/mysql-administrator-1.1.4/mysql-administrator/missing
--run autoheader
autom4te-2.59: need GNU m4 1.4 or later: /usr/bin/gm4
autoheader-2.59: /usr/bin/autom4te-2.59 failed with exit status: 1
I'm thinking this is an autoconf problem, and I'm not sure what the right way
to fix it is. As a workaround, I tried making a symlink from /usr/bin/m4 to
/usr/bin/gm4. This let's the build complete successfully.
Better still, mysql-adminstrator now starts up with a dialog box! It even seems
to work. Yay!
So... Still need to figure out how to solve the autoconf problem. Maybe someone
else can do that?
Created attachment 71340 [details]
dev-db/mysql-query-browser/mysql-query-browser-1.1.17.ebuild
Here's an updated ebuild for mysql-query-browser-1.1.7. Historically, I've had
similar problems with this as with mysql-administrator. Changes:
* Require gtkmm-2.4 or newer
* Remove unneeded patch for MySQL-4.1 compatibility
It probably has the same autoconf problem as the previous ebuild, but I never
got rid of my gm4 symlink to test. With the symlink it builds and seems to run
correctly.
I'm currently 500 km away from home. I'll get back to my equipment this weekend and take a look at the new versions. swegener: *bump* if there is no response by 14 dec, I will assume this problem has gone away, and close with NEEDINFO pending anybody getting back to it. I haven't seen this occur for a long time. However, the current version still has a critical bug where going to User Administration causes it to freeze. The fix for this is to alter /usr/bin/mysql-administrator (shell script) by adding this line before launching the real program: export DEBUG_DONT_SPAWN_FETCHES=1 See http://bugs.mysql.com/bug.php?id=17879 for the upstream bug. It's closed, but perhaps should not be. I'm currently running 1.1.10 and it needs the fix. All these issues seem to be covered by #141648, so I think it is safe to close this one. If you have issues with dev-db/mysql-gui-tools, file a new bug please. |