Bug #17352 | MySQL Administrator crashes when using the "User Administration" | ||
---|---|---|---|
Submitted: | 13 Feb 2006 20:29 | Modified: | 15 Jun 2006 18:19 |
Reporter: | Thierry Rietsch | Email Updates: | |
Status: | Can't repeat | Impact on me: | |
Category: | MySQL Administrator | Severity: | S2 (Serious) |
Version: | 1.1.6 / 1.1.8 | OS: | Linux (Linux) |
Assigned to: | CPU Architecture: | Any |
[13 Feb 2006 20:29]
Thierry Rietsch
[13 Feb 2006 20:34]
Thierry Rietsch
Also this happens when I try to use the binary Linux (x86, glibc-2.2, "standard" is static, gcc) version of MySQL Administrator.
[14 Feb 2006 19:26]
Stefan Wold
I have detected the same problem. These are the versions I'm currently running mysql-administrator 1.1.8 gcc 3.4.5 glibc 2.3.6 compiled with nptl kernel 2.6.14.5 mysql 5.0.18 According to strace there seem to be trouble with FUTEX and that resources is temporarily unavailable. I have tested this on a clean installation of mysql 5.0.18 to make sure the database is in order but the problem is still there. I'll upload the strace of mysql-administrator (if possible).
[14 Feb 2006 19:29]
Stefan Wold
Sorry just noticed I added wrong version for mysql-administrator, it should have been 1.1.6. And since only the bug author could upload files I'll paste the last lines of my strace: 22952 gettimeofday({1139944747, 16178}, NULL) = 0 22952 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}], 2, 0) = 0 22952 write(3, "5\30\4\0F\6\300\2\262\3\300\2\16\1\23\0\234\4\5\0G\6\300"..., 1288) = 1288 22952 ioctl(3, FIONREAD, [0]) = 0 22952 gettimeofday({1139944747, 19995}, NULL) = 0 22952 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}], 2, 0) = 0 22952 ioctl(3, FIONREAD, [0]) = 0 22952 gettimeofday({1139944747, 20080}, NULL) = 0 22952 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}], 2, 0) = 0 22952 futex(0xbf999d48, FUTEX_WAIT, 2, NULL <unfinished ...> 22958 fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 22958 read(6, 0x84ec4b0, 8192) = -1 EAGAIN (Resource temporarily unavailable) 22958 fcntl64(6, F_SETFL, O_RDWR) = 0 22958 write(6, "#\0\0\0\3SELECT * FROM mysql.user WH"..., 39) = 39 22958 read(6, "\1\0\0\1%+\0\0\2\3def\5mysql\4user\4user\4Ho"..., 16384) = 2376 22958 fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 22958 read(6, 0x84ec4b0, 8192) = -1 EAGAIN (Resource temporarily unavailable) 22958 fcntl64(6, F_SETFL, O_RDWR) = 0 22958 write(6, "#\0\0\0\3SELECT * FROM mysql.db WH"..., 39) = 39 22958 read(6, "\1\0\0\1\24\'\0\0\2\3def\5mysql\2db\2db\4Host\4H"..., 16384) = 1193 22958 fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 22958 read(6, 0x84ec4b0, 8192) = -1 EAGAIN (Resource temporarily unavailable) 22958 fcntl64(6, F_SETFL, O_RDWR) = 0 22958 write(6, "$\0\0\0\3SHOW TABLE STATUS FROM `x` "..., 40) = 40 22958 read(6, "\35\0\0\1\377\31\4#42000Unknown database \'x"..., 16384) = 33 22958 fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 22958 read(6, 0x84ec4b0, 8192) = -1 EAGAIN (Resource temporarily unavailable) 22958 fcntl64(6, F_SETFL, O_RDWR) = 0 22958 write(6, "#\0\0\0\3SHOW COLUMNS FROM mysql.pro"..., 39) = 39 22958 read(6, "\1\0\0\1\6-\0\0\2\3def\0\7COLUMNS\0\5Field\vCO"..., 16384) = 617 22958 fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 22958 read(6, 0x84ec4b0, 8192) = -1 EAGAIN (Resource temporarily unavailable) 22958 fcntl64(6, F_SETFL, O_RDWR) = 0 22958 write(6, "+\0\0\0\3SHOW TABLE STATUS FROM `mys"..., 47) = 47 22958 read(6, "\1\0\0\1\22*\0\0\2\3def\0\6TABLES\0\4Name\nTABL"..., 16384) = 1116 22958 brk(0x8601000) = 0x8601000 22958 fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 22958 read(6, 0x84ec4b0, 8192) = -1 EAGAIN (Resource temporarily unavailable) 22958 fcntl64(6, F_SETFL, O_RDWR) = 0 22958 write(6, "$\0\0\0\3SHOW COLUMNS FROM mysql.tab"..., 40) = 40 22958 read(6, "\1\0\0\1\6-\0\0\2\3def\0\7COLUMNS\0\5Field\vCO"..., 16384) = 709 22958 fcntl64(6, F_SETFL, O_RDWR|O_NONBLOCK) = 0 22958 read(6, 0x84ec4b0, 8192) = -1 EAGAIN (Resource temporarily unavailable) 22958 fcntl64(6, F_SETFL, O_RDWR) = 0 22958 write(6, "%\0\0\0\3SHOW COLUMNS FROM mysql.col"..., 41) = 41 22958 read(6, "\1\0\0\1\6-\0\0\2\3def\0\7COLUMNS\0\5Field\vCO"..., 16384) = 572 22958 write(5, "\357\276\255\336\30\235\231\277\360\2203\10", 12) = 12 22958 _exit(0) = ? 22952 <... futex resumed> ) = -1 EINTR (Interrupted system call) 22952 --- SIGTERM (Terminated) @ 0 (0) --- 22952 +++ killed by SIGTERM +++
[16 Feb 2006 12:52]
MySQL Verification Team
I was unable to repeat this issue on Fedora Core 4 and Administrator 1.1.6. I connected as root, then clicked User Administration and selecting and user account or pressing the New User button the User Information screen is available. However with a limited user's privileges then I got a screen saying that was unable for to get the user privileges information.
[16 Feb 2006 19:43]
Stefan Wold
If there is something else you want me to do for debugging purpose just let me know and I will be happy to test it. Mysql administrator work just fine with the exception of clicking on "User administration", as the bug author claimed the whole application freeze and has to be killed on the command line.
[7 Mar 2006 19:38]
Thierry Rietsch
I tried it on another archlinux installation, and it crashes also. What kind of informatione do you need from my system?
[26 Mar 2006 8:14]
Panu Bloigu
Hello. I'm experiencing exactly the same problem with MySQL Administrator 1.1.6 and MySQL 5.0.18 on Fedora Core 5. I'm also willing to provide any infomation about my system that would help to solve this issue.
[10 Jun 2006 22:44]
Matt
Same problem with Debian's testing (Etch) tag. MySQL 5.0.22, MySQL Admin 1.1.10. This is was a clean install on a clean server and logging in as root.
[15 Jun 2006 18:19]
Thierry Rietsch
So what's going on with this case? I would help you and provide information, but I need to know what information you need!
[30 Jul 2006 11:40]
Jarod McKnight
Hi, I am using Debian Etch, too. I have the same problem with the testing MySQL server (5.0.22) and the testing MySQL-Administrator (1.1.10), both up to date from apt. I downloaded the "Linux (non RPM package) downloads, Linux (x86, glibc-2.2, "standard" is static, gcc)" (1.1.10a) Version, and that versions "User Administration" is running for me.
[11 Aug 2006 0:22]
[ name withheld ]
I have the same problem on Debian Sid and the following patch seems to solve what appears to be a deadlock/race condition without any adverse effects. I think the user_selected is being called at the same time as show and for some reason they are deadlocking around the LockMySQL call that gets hit if you trace it. *** MAUserAdministrationPanel.cc.old 2006-08-11 10:13:20.000000000 +1000 --- MAUserAdministrationPanel.cc 2006-08-11 07:29:24.000000000 +1000 *************** *** 2236,2242 **** else unshow_user(); ! reload_catalogs(); } --- 2236,2242 ---- else unshow_user(); ! //reload_catalogs(); } I remember a similar thing happened with Inkscape a while back on the transition to the same version of gtk. So it might be a gtk bug, but in the end I believe the problem was resolved in Inkscape code.
[7 Sep 2006 5:52]
Stefan Wold
That patch solved the issue for me as well. I'm compiling against GTK+2.10.3.
[27 Sep 2006 20:53]
Niklas Lagergren
I have Ubuntu 6.06 LTS and MySQL Administrator 6.06. I have the exact same problem. I however do not know how to recomplie, does anyone have the time to give me some instructions on how to do that? Regards, Lani