Bug #64549 [Opn]: mysqlnd persistent connection handling out of control

From: Date: Fri, 17 Apr 2020 12:41:33 +0000
Subject: Bug #64549 [Opn]: mysqlnd persistent connection handling out of control
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-226640@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=64549&edit=1

 ID:                 64549
 Updated by:         cmb@php.net
 Reported by:        rgagnon24 at gmail dot com
 Summary:            mysqlnd persistent connection handling out of
                     control
 Status:             Open
 Type:               Bug
 Package:            MySQL related
 Operating System:   CentOS 5.9
 PHP Version:        5.3.23
 Block user comment: N
 Private report:     N

 New Comment:

Well, there is a persistent connection cache per PHP process (NTS)
or per PHP thread (ZTS) ...


Previous Comments:
------------------------------------------------------------------------
[2018-10-15 20:45:51] nick at sabramedia dot com

We have spent a few days trying to figure this one out. We are moving to a new server with Ubuntu
Bionic, using PHP 5.6.38 and mysqlnd as the driver. We need to use persistent connections
(PDO::ATTR_PERSISTENT => TRUE). However, we kept getting the server gone away or lost connection
errors, apparently a false positive. These went away when we took persistent connections off. The
solution for using persistent connections was to use the error control operator '@' as
rgagnon24 stated more than 5 years ago. Just posting here to let the powers that be know this is
still a 'persistent' bug. Pardon the pun.

------------------------------------------------------------------------
[2017-02-08 09:03:50] steffen dot weber at gmail dot com

This bug still exists in PHP 7.0.15 and PHP 7.1.1.

------------------------------------------------------------------------
[2017-02-08 09:01:02] steffen dot weber at gmail dot com

I've just run into the problem that PDO::__construct emits a needless warning 'MySQL
server has gone away' when a persistent connection was closed remotely (e.g. by a MySQL server
restart). Since the connection is automatically reestablished there is no need for such a warning.

I did not know that you could use the '@'-error-control-operator to suppress the
unnecessary warning without suppressing exceptions, too. Thank you for the hint, rgagnon24!

------------------------------------------------------------------------
[2014-10-30 13:39:47] patryk dot kozlowski at toxic-software dot pl

PHP Warning:  PDO::__construct(): MySQL server has gone away in <filepath> on line
<line_number> - this error still occurs randomly on lastes versions of php-5.5 and php-5.6

------------------------------------------------------------------------
[2013-06-14 05:13:59] rgagnon24 at gmail dot com

Related To: Bug #64993

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


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=64549


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


Thread (17 messages)

« previous php.bugs (#226640) next »