svn: /php/php-src/ branches/PHP_5_3/ext/mysql/tests/mysql_mysqlnd_read_timeout_long.phpt
branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout.phpt branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_long.phpt
branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_zero.phpt branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd.h
branches/PHP_5_3/ext/mysqlnd/php_mysqlnd.c trunk/ext/mysql/tests/mysql_mysqlnd_read_timeout_long.phpt
trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout.phpt trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_long.phpt
trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_zero.phpt trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd.h trunk/ext/mysqlnd/php_mysqlnd.c
| From: | Ulf Wendel | Date: | Wed, 16 Sep 2009 15:00:54 +0000 |
| Subject: | svn: /php/php-src/ branches/PHP_5_3/ext/mysql/tests/mysql_mysqlnd_read_timeout_long.phpt branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout.phpt branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_long.phpt branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_zero.phpt branches/PHP_5_3/ext/mysqlnd/mysqlnd.c branches/PHP_5_3/ext/mysqlnd/mysqlnd.h branches/PHP_5_3/ext/mysqlnd/php_mysqlnd.c trunk/ext/mysql/tests/mysql_mysqlnd_read_timeout_long.phpt trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout.phpt trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_long.phpt trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_zero.phpt trunk/ext/mysqlnd/mysqlnd.c trunk/ext/mysqlnd/mysqlnd.h trunk/ext/mysqlnd/php_mysqlnd.c |
||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-60407@lists.php.net to get a copy of this message | ||
uw Wed, 16 Sep 2009 15:00:54 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=288378
Log:
Fix and tests for bug #49511 . mysqlnd and the MySQL Client Library (libmysql) use different
networking APIs. mysqlnd does use PHP streams whereas libmysql uses its own wrapper of the operating
level network calls. PHP sets by default a read timeout of 60s for streams - php.ini,
default_socket_timeout. This default applies to all streams that set no other timeout value. mysqlnd
has not set any other value and therefore it connections of long running queries can have been cut
off after default_socket_timeout seconds resulting in a 2006 - MySQL Server has gone away error
message. The MySQL Client Library sets a default timeout of 365 * 24 * 3600 seconds (1year) and
waits for other timeouts to happen, e.g. TCP/IP timeouts. mysqlnd now uses the same very long
timeout. The value is configurable through a new php.ini setting: mysqlnd.net_read_timeout.
mysqlnd.net_read_timeout gets used by any extension (ext/mysql, ext/mysqli, PDO_MySQL) that uses
mysqlnd. mysqlnd tells PHP Streams!
to use mysqlnd.net_read_timeout. Please note that there may be subtle differences between
MYSQL_OPT_READ_TIMEOUT from the MySQL Client Library and PHP Streams. E.g. MYSQL_OPT_READ_TIMEOUT is
documented to work only for TCP/IP connections and, prior to MySQL 5.1.2, only for Windows. PHP
streams may not have this limitation. Please check the streams documentation, if in doubt.
Bug: http://bugs.php.net/49511 (Assigned) mysqlnd timeout
seems fixed at 60 secs
Changed paths:
A php/php-src/branches/PHP_5_3/ext/mysql/tests/mysql_mysqlnd_read_timeout_long.phpt
A php/php-src/branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout.phpt
A php/php-src/branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_long.phpt
A php/php-src/branches/PHP_5_3/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_zero.phpt
U php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.c
U php/php-src/branches/PHP_5_3/ext/mysqlnd/mysqlnd.h
U php/php-src/branches/PHP_5_3/ext/mysqlnd/php_mysqlnd.c
A php/php-src/trunk/ext/mysql/tests/mysql_mysqlnd_read_timeout_long.phpt
A php/php-src/trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout.phpt
A php/php-src/trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_long.phpt
A php/php-src/trunk/ext/mysqli/tests/mysqli_mysqlnd_read_timeout_zero.phpt
U php/php-src/trunk/ext/mysqlnd/mysqlnd.c
U php/php-src/trunk/ext/mysqlnd/mysqlnd.h
U php/php-src/trunk/ext/mysqlnd/php_mysqlnd.c
Attachment: [text/x-diff] svn-diffs-288378.txt
Attachment: [text/x-diff] svn-diffs-288378.txt