#39858 [Fbk->Opn]: Lost connection to MySQL server during query by a repeated call stored proced
| From: | develar at gmail dot com | Date: | Mon, 18 Dec 2006 09:28:00 +0000 |
| Subject: | #39858 [Fbk->Opn]: Lost connection to MySQL server during query by a repeated call stored proced | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-106470@lists.php.net to get a copy of this message | ||
ID: 39858
User updated by: develar at gmail dot com
Reported By: develar at gmail dot com
-Status: Feedback
+Status: Open
Bug Type: PDO related
Operating System: Windows XP SP2
PHP Version: 5.2.0
New Comment:
Почитайте
http://phpclub.ru/talk/showthread.php?s=&threadid=92764&rand=10
It always worked normally on linux. My first message: "I read #35333
#35637 #35203, but why the given code
fine works in Debian?" Only in windows.
Previous Comments:
------------------------------------------------------------------------
[2006-12-18 09:20:54] tony2001@php.net
Works just fine on Linux.
Make sure you're really running the snapshot.
------------------------------------------------------------------------
[2006-12-18 08:43:52] develar at gmail dot com
It is not fixed.
------------------------------------------------------------------------
[2006-12-18 08:34:30] tony2001@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5.2-win32-latest.zip
------------------------------------------------------------------------
[2006-12-17 14:30:25] develar at gmail dot com
Description:
------------
The second call stored procedures causes an error "SQLSTATE[HY000]:
General error: 2013 Lost connection to MySQL server during query" with
probability of 50%. I read #35333 #35637 #35203, but why the given code
fine works in Debian?
Reproduce code:
---------------
CREATE PROCEDURE
foo()
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
SELECT 2 * 2;
END;
<?php
$Db = new PDO('mysql:host=localhost;dbname=test', 'root', '',
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'",
PDO::ATTR_PERSISTENT => true));
$Db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
$Db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$Pdo = $Db->prepare('CALL foo()');
$Pdo->execute();
print_r($Pdo->fetchAll());
$Pdo = $Db->prepare('CALL foo()');
$Pdo->execute();
print_r($Pdo->fetchAll());
$Pdo->closeCursor();
?>
Expected result:
----------------
Array
(
[0] => Array
(
[2 * 2] => 4
)
)
Array
(
[0] => Array
(
[2 * 2] => 4
)
)
Actual result:
--------------
Array
(
[0] => Array
(
[2 * 2] => 4
)
)
<br />
<b>Warning</b>: PDOStatement::execute() [<a
href='function.PDOStatement-execute'>function.PDOStatement-execute</a>]:
SQLSTATE[HY000]: General error: 2013 Lost connection to MySQL server
during query in <b>C:\home\test\www\pdo.php</b> on line <b>12</b><br
/>
Array
(
)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=39858&edit=1