Date: Sun, 27 Aug 2006 12:31:33 GMT From: Andrew Tulloch <andrew@biliskner.demon.co.uk> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/102561: rc.d ordering results in apache + mod_php5 starting without pdo mysql support Message-ID: <200608271231.k7RCVXbg026354@www.freebsd.org> Resent-Message-ID: <200608271240.k7RCeKsX046665@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 102561 >Category: ports >Synopsis: rc.d ordering results in apache + mod_php5 starting without pdo mysql support >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Aug 27 12:40:19 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Andrew Tulloch >Release: 6.1-STABLE >Organization: >Environment: FreeBSD xxxxxxxx.dev 6.1-STABLE FreeBSD 6.1-STABLE #0: Sat Aug 26 13:54:04 BST 2006 root@xxxxxxxx.dev:/usr/obj/usr/src/sys/XXXXXXXX i386 >Description: Due to rc.d script ordering on boot the apache2 port starting before the mysql client libs script is run. This results in the following error: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20050922/pdo_mysql.so' - Shared object "libmysqlclient.so.15" not found, required by "pdo_mysql.so" in Unknown on line 0 [Sun Aug 27 13:00:35 2006] [notice] Apache/2.0.59 (FreeBSD) PHP/5.1.5 configured -- resuming normal operations Apache is now running with PHP, but with PDO without PDO mysql support because the mysql libs were not present at the time apache was started. >How-To-Repeat: Install apache (www/apache2) php5 (www/mod_php5) with PDO (databases/pecl-PDO) and install PDO mysql (databases/pecl-PDO_MYSQL). Reboot the machine and you should see the error: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20050922/pdo_mysql.so' - Shared object "libmysqlclient.so.15" not found, required by "pdo_mysql.so" in Unknown on line 0 [Sun Aug 27 13:00:35 2006] [notice] Apache/2.0.59 (FreeBSD) PHP/5.1.5 configured -- resuming normal operations In /var/log/httpd-error.log >Fix: Create a more modern startup script so that mysqlclient libs are present before other daemons are started as it seems old style startup scripts are processed last. Something like: #!/bin/sh # # # PROVIDE: mysqlclient # REQUIRE: NETWORKING SERVERS # BEFORE: DAEMON # KEYWORD: shutdown . /etc/rc.subr name="mysqlclient" rcvar=`set_rcvar` start_cmd="mysqlclient_start" load_rc_config $name mysqlclient_start() { /sbin/ldconfig -m /usr/local/lib/mysql } run_rc_command "$1" >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608271231.k7RCVXbg026354>