Edit report at https://bugs.php.net/bug.php?id=55741&edit=1

 ID:                 55741
 Updated by:         and...@php.net
 Reported by:        patrick_adrichem at hotmail dot com
 Summary:            Warning thrown
-Status:             Assigned
+Status:             Feedback
 Type:               Bug
 Package:            MySQL related
 Operating System:   linux
 PHP Version:        5.3SVN-2011-09-20 (SVN)
 Assigned To:        uw
 Block user comment: N
 Private report:     N

 New Comment:

Hi,
I wasn't able to reproduce with 5.3-svn and two builds:
- mysqlnd
- libmysql

Here is my mysqlnd output:
$ ./php -r 
'error_reporting(E_ALL);$c=mysql_connect("127.0.0.1","root","root");var_dump($c);var_dump(mysql_query("set
 @@wait_timeout=5",$c));sleep(7);var_dump(mysql_ping($c));'
resource(6) of type (mysql link)
bool(true)

Warning: mysql_ping(): MySQL server has gone away in Command line code on line 1
bool(false)


Here is my libmysql output:
$ ./php -r 
'error_reporting(E_ALL);$c=mysql_connect("127.0.0.1","root","root");var_dump($c);var_dump(mysql_query("set
 @@wait_timeout=5",$c));sleep(7);var_dump(mysql_ping($c));'
resource(4) of type (mysql link)
bool(true)
bool(false)

I suspect how it could be shut up, but I can't reproduce it to be able to test 
it.


Previous Comments:
------------------------------------------------------------------------
[2011-09-20 14:50:21] larue...@php.net

ulf, plz look at this.

------------------------------------------------------------------------
[2011-09-20 14:47:19] patrick_adrichem at hotmail dot com

Description:
------------
---
>From manual page: 
>http://www.php.net/function.mysql-ping#refsect1-function.mysql-ping-description
---


Mysql_ping is in my vision used to check wether your connection is still alive, 
by pinging the server since PHP 5.0.38 this function no longer autoreconnects, 
so its a real "Check if connection is alive" function. However if the 
connection is not alive it still throws a warning:

mysql_ping(): 8 is not a valid MySQL-Link resource

Which is obvious, because thats why you use this function...

Test script:
---------------
<?php

error_reporting(E_ALL);

$rConnection = mysql_connect("host", "user", "pass") or die("Could not 
connect");

sleep(60);

if (false === mysql_ping($rConnection))
{
echo "Connection gone";
}
else
{
echo "Connection alive";
}

Expected result:
----------------
Connection gone

Actual result:
--------------
mysql_ping(): 8 is not a valid MySQL-Link resource
Connection gone


------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=55741&edit=1

Reply via email to