ID: 35415 User updated by: gm at html dot it Reported By: gm at html dot it -Status: Bogus +Status: Open Bug Type: PDO related Operating System: Linux Fedora Core 4 -PHP Version: 5CVS-2005-11-27 (snap) +PHP Version: 5.1.1 New Comment:
Here is the backtrace #0 0x080cc915 in shutdown_memory_manager (silent=0, full_shutdown=0) at /home/giancarlo/sorgenti/php-5.1.1/Zend/zend_alloc.c:511 #1 0x080b344d in php_request_shutdown (dummy=0x0) at /home/giancarlo/sorgenti/php-5.1.1/main/main.c:1287 #2 0x0815e7be in apache_php_module_main (r=0x920ab84, display_source_mode=0) at /home/giancarlo/sorgenti/php-5.1.1/sapi/apache/sapi_apache.c:59 #3 0x080ac6d5 in send_php () #4 0x080ac73a in send_parsed_php () #5 0x082fcf3f in ap_invoke_handler () #6 0x083127fa in process_request_internal () #7 0x0831285a in ap_process_request () #8 0x08309349 in child_main () #9 0x0830956c in make_child () #10 0x083096c0 in startup_children () #11 0x08309d56 in standalone_main () #12 0x0830a55d in main () Previous Comments: ------------------------------------------------------------------------ [2005-11-28 12:16:58] [EMAIL PROTECTED] Not reproducible -> bogus. ------------------------------------------------------------------------ [2005-11-28 10:25:32] gm at html dot it Sorry, but i'm not able to reproduce GDB backtrace. I tried both the methods described in the howto page you linked, but something went wrong ------------------------------------------------------------------------ [2005-11-28 06:48:41] kuprishuz at gmail dot com description: --------------- i have encountered the same problem, it appears that apache will crash when an invalid sql call is used in conjunction with persistent connections. reproduce code: --------------- keep in mind the sql statement must be incorrect to produce a crash. crash will also occur when using $database->query as an alternative to $database->prepare. <?php $database = new PDO('mysql:host=localhost;dbname=nitelife', 'root', 'Quell26A', array(PDO::ATTR_PERSISTENT => true)); $query = $database->prepare("SELECT * FROM user WHERE id = ?"); if ($query->execute(array('1'))) { while ($row = $query->fetch(PDO::FETCH_ASSOC)) { print_r($row);; } } ?> Expected Result: ------------------- sql call to fail and an error message retrievable from $query->errorInfo() Actual Result: ------------------- Apache crash ------------------------------------------------------------------------ [2005-11-27 01:11:04] gm at html dot it Description: ------------ The code reported causes an apache crash. It happens only with persistent connection, if i set PDO::ATTR_PERSISTENT = false, the script works fine. Reproduce code: --------------- <?php try { $dbo = new PDO( 'mysql:host=localhost;dbname=test', 'user', 'pass', array(PDO::ATTR_PERSISTENT => true) ); } catch(PDOException $e) { echo 'Errore di connessione: '.$e->getMessage(); } $pdostatement = $dbo->prepare('SELECT * FROM fake_table'); $pdostatement->execute(); echo 'print something'; ?> Expected result: ---------------- The script should just print out 'print something'. Actual result: -------------- Apache crash, this is the error in apache error.log: Sun Nov 27 00:48:48 2005] [notice] child pid 3051 exit signal Segmentation fault (11) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=35415&edit=1