From nobody@FreeBSD.org  Sun Aug 27 12:31:33 2006
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id A413316A4DA
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 27 Aug 2006 12:31:33 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (www.freebsd.org [216.136.204.117])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 54BB644788
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 27 Aug 2006 12:31:33 +0000 (GMT)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (localhost [127.0.0.1])
	by www.freebsd.org (8.13.1/8.13.1) with ESMTP id k7RCVXgL026364
	for <freebsd-gnats-submit@FreeBSD.org>; Sun, 27 Aug 2006 12:31:33 GMT
	(envelope-from nobody@www.freebsd.org)
Received: (from nobody@localhost)
	by www.freebsd.org (8.13.1/8.13.1/Submit) id k7RCVXbg026354;
	Sun, 27 Aug 2006 12:31:33 GMT
	(envelope-from nobody)
Message-Id: <200608271231.k7RCVXbg026354@www.freebsd.org>
Date: Sun, 27 Aug 2006 12:31:33 GMT
From: Andrew Tulloch <andrew@biliskner.demon.co.uk>
To: freebsd-gnats-submit@FreeBSD.org
Subject: rc.d ordering results in apache + mod_php5 starting without pdo mysql support
X-Send-Pr-Version: www-2.3

>Number:         102561
>Category:       ports
>Synopsis:       databases/mysql50-client: rc.d ordering results in apache + mod_php5 starting without pdo mysql support
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    ale
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Aug 27 12:40:19 GMT 2006
>Closed-Date:    Mon Aug 28 05:36:28 GMT 2006
>Last-Modified:  Mon Aug 28 05:36:28 GMT 2006
>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 &quot;libmysqlclient.so.15&quot; not found, required by &quot;pdo_mysql.so&quot; 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 &quot;libmysqlclient.so.15&quot; not found, required by &quot;pdo_mysql.so&quot; 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:
State-Changed-From-To: open->feedback 
State-Changed-By: linimon 
State-Changed-When: Sun Aug 27 20:29:17 UTC 2006 
State-Changed-Why:  
To which port does this PR apply? 


Responsible-Changed-From-To: freebsd-ports-bugs->linimon 
Responsible-Changed-By: linimon 
Responsible-Changed-When: Sun Aug 27 20:29:17 UTC 2006 
Responsible-Changed-Why:  
Track. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=102561 
State-Changed-From-To: feedback->open 
State-Changed-By: linimon 
State-Changed-When: Sun Aug 27 23:54:01 UTC 2006 
State-Changed-Why:  
Submitter thinks this may be a problem in databases/mysql50-client. 


Responsible-Changed-From-To: linimon->ale 
Responsible-Changed-By: linimon 
Responsible-Changed-When: Sun Aug 27 23:54:01 UTC 2006 
Responsible-Changed-Why:  

http://www.freebsd.org/cgi/query-pr.cgi?pr=102561 
State-Changed-From-To: open->closed 
State-Changed-By: ale 
State-Changed-When: Mon Aug 28 05:34:56 UTC 2006 
State-Changed-Why:  
mysqlclient uses ldconfig rc.d startup script. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=102561 
>Unformatted:
