Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 121461 - dev-db/mysql-5.0.18-r30 won't restart - pid and sock are still present error
Summary: dev-db/mysql-5.0.18-r30 won't restart - pid and sock are still present error
Status: VERIFIED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: AMD64 Linux
: Highest major (vote)
Assignee: Gentoo Linux MySQL bugs team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-02-03 11:28 UTC by Scott
Modified: 2006-05-24 06:36 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Scott 2006-02-03 11:28:32 UTC
Portage 2.0.54 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.15-gentoo-r1 x86_64)
=================================================================
System uname: 2.6.15-gentoo-r1 x86_64 AMD Athlon(tm) 64 Processor 3800+
Gentoo Base System version 1.6.14
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.3 [enabled]
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O3 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/bind /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=k8 -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distcc distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.osuosl.org/ ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://distro.ibiblio.org/pub/linux/distributions/gentoo/ ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo ftp://mirror.iawnet.sandia.gov/pub/gentoo/ ftp://ftp.ussg.iu.edu/pub/linux/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/overlays/gentoo-php-overlay/production-ready /usr/local/overlays/gentoo-php-overlay/experimental"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="amd64 authdaemond avi berkdb bitmap-fonts bzip2 cli crypt cups curl dba eds emboss encode expat fastcgi foomaticdb fortran gd gif gpm imagemagick imap imlib innodb ipv6 javascript jpeg libwww lzw lzw-tiff mbox mp3 mpeg mysql mysqli ncurses nls pam pcre pdflib perl php php5 png postgres python readline samba scl sdl session simplexml snmp soap sockets spell sqlite ssl svg symlink tcpd threads tiff truetype truetype-fonts type1-fonts udev usb userlocales vhosts xml xml2 xv zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS

I have tried this on 2 servers running dev-db/mysql-5.0.18-r30 - I can't /etc/init.d/mysql stop start or /etc/init.d/mysql restart as it gives the error:

 * Stopping mysql (pid=) ...
 * Stopping mysqld (0)                                                                                                                                                      [ ok ]
 *  ...
"/var/run/mysqld/mysqld.pid" and/or "/var/run/mysqld/mysqld.sock" are still present.
Please check that no server is running and remove them. 

However, if I run it with "sleep 10" between those commands, it's fine. e.g.

mercury ~ # /etc/init.d/mysql stop && sleep 10 && /etc/init.d/mysql start
 * Stopping mysql (pid=) ...
 * Stopping mysqld (0)                                                                                                                                                      [ ok ]
 *  ...
 * Starting mysql (/etc/mysql/my.cnf)                                                                                                                                       [ ok ]
mercury ~ #  

My service monitor automatically restarts downed services and it is failing due to this problem. Again, this has been tested on 2 amd64 servers running ~amd64 mysql.
Comment 1 Francesco R. (RETIRED) gentoo-dev 2006-02-03 12:16:15 UTC
the row 324 of /etc/init.d/mysql should be:
     while [[ -n "$PID" ]] \
please change it to 
     while [[ -f "${pidfile}" ]] || [[ -n "$PID" ]] \
if this solve I will change the script
Comment 2 Scott 2006-02-03 13:56:54 UTC
Hello,

Just changed it but it still doesn't work. I can only try it on the one box right now as the other is running a MEMORY table so I can't restart often.

pluto ~ # /etc/init.d/mysql restart
 * Re-caching dependency info (mtimes differ)...
 * Stopping mysql (pid=) ...
 * Stopping mysqld (0)                                                                                                                                                      [ ok ]
 *  ...
"/var/run/mysqld/mysqld-500.pid" and/or "/var/run/mysqld/mysqld-500.sock" are still present.
Please check that no server is running and remove them.                                                                                                                     [ !! ]
pluto ~ # /etc/init.d/mysql restart
 *  ...
 * Starting mysql (/etc/mysql/my.cnf)                                                                                                                                       [ ok ]
pluto ~ # /etc/init.d/mysql restart
 * Stopping mysql (pid=) ...
 * Stopping mysqld (0)                                                                                                                                                      [ ok ]
 *  ...
"/var/run/mysqld/mysqld-500.pid" and/or "/var/run/mysqld/mysqld-500.sock" are still present.
Please check that no server is running and remove them.                                                                                                                     [ !! ]
pluto ~ # /etc/init.d/mysql restart
 *  ...
"/var/run/mysqld/mysqld-500.pid" and/or "/var/run/mysqld/mysqld-500.sock" are still present.
Please check that no server is running and remove them.                                                                                                                     [ !! ]
pluto ~ # /etc/init.d/mysql restart
 *  ...
 * Starting mysql (/etc/mysql/my.cnf)                                                                                                                                       [ ok ]
pluto ~ #
Comment 3 Francesco R. (RETIRED) gentoo-dev 2006-02-03 15:55:30 UTC
ok thanks, now I'm pratically certain that under certain circumstances mysql don't delete the pid file, the next init script will remove it prior to start mysql.
Comment 4 Francesco R. (RETIRED) gentoo-dev 2006-02-03 18:54:19 UTC
copy 

"http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/dev-db/mysql/files/mysql-slot.rc6-r3?rev=1.2" 
or $PORTDIR/dev-db/mysql/files/mysql-slot.rc6-r3

onto /etc/init.d/mysql and restart it. Please report success or not

Comment 5 Jakub Moc (RETIRED) gentoo-dev 2006-02-04 02:49:57 UTC
(In reply to comment #3)
> ok thanks, now I'm pratically certain that under certain circumstances mysql
> don't delete the pid file

Yeah, confirmed here... 
Comment 6 Scott 2006-02-04 03:59:28 UTC
pluto ~ # cp /etc/init.d/mysql /etc/init.d/mysql-bak; cp /usr/portage/dev-db/mysql/files/mysql-slot.rc6-r3 /etc/init.d/mysql
pluto ~ # /etc/init.d/mysql restart
 * Caching service dependencies ...                                                                                                                                         [ ok ]
 * Stopping mysql (pid=) ...
 * Stopping mysqld (0)                                                                                                                                                      [ ok ]
 *  ...
 * Starting mysql (/etc/mysql/my.cnf)
 * MySQL NOT started (1)                                                                                                                                                    [ !! ]
pluto ~ # /etc/init.d/mysql restart
 *  ...
 * Starting mysql (/etc/mysql/my.cnf)                                                                                                                                       [ ok ]
pluto ~ # /etc/init.d/mysql restart
 * Stopping mysql (pid=) ...
 * Stopping mysqld (0)                                                                                                                                                      [ ok ]
 *  ...
 * Starting mysql (/etc/mysql/my.cnf)
 * MySQL NOT started (1)                                                                                                                                                    [ !! ]
pluto ~ # /etc/init.d/mysql restart
 *  ...
 * Starting mysql (/etc/mysql/my.cnf)
 * MySQL NOT started (1)                                                                                                                                                    [ !! ]
pluto ~ # /etc/init.d/mysql restart
 *  ...
 * Starting mysql (/etc/mysql/my.cnf)                                                                                                                                       [ ok ]
pluto ~ #
Comment 7 Francesco R. (RETIRED) gentoo-dev 2006-02-04 05:10:56 UTC
Scott, I've not been so clear, I've changed $PORTDIR/dev-db/mysql/files/mysql-slot.rc6-r3 without revbump, because I'm gathering bug fixes before to force a reemerge using "-r31" for mysql ebuilds, this is why I gave you the link to cvs sources.

If you synced and are using the correct ebuild please provide more information on the service monitoring you're using in place of baselayout.
Comment 8 Francesco R. (RETIRED) gentoo-dev 2006-02-04 05:22:15 UTC
(In reply to comment #7)
....
> If you synced and are using the correct ebuild please provide more information
> on the service monitoring you're using in place of baselayout.

Obviously speaking of init.d _not_ of ebuild here

Comment 9 Luca Longinotti (RETIRED) gentoo-dev 2006-05-24 06:36:57 UTC
Closing as there is no more slotted mysql in the tree, and this problem derived directly from that.
Best regards, CHTEKK.