#42075 [NoF->Fbk]: pdo_oci crash (with persistent connection) when couldn't connect to db
ID: 42075
Updated by: mbeccati@php.net
Reported By: romande at gmail dot com
-Status: No Feedback
+Status: Feedback
Bug Type: PDO related
Operating System: linux (2.4.21-49.EL)
PHP Version: 5.2.3
-Assigned To: sixd
+Assigned To: mbeccati
New Comment:
Please try using this CVS snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows:
http://windows.php.net/snapshots/
This bug should be fixed after applying the fix for #48070
Previous Comments:
------------------------------------------------------------------------
[2008-07-29 01:00:00] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
------------------------------------------------------------------------
[2008-07-21 10:38:10] mj@php.net
I'm unable to reproduce this issue with PHP 5.3.0-dev using the
following script:
<?php
try {
$db = new PDO("oci:dbname=nosuchthingsasthis", "test", "foo",
array(PDO::ATTR_PERSISTENT => true));
} catch (PDOException $e) {
print $e->getMessage();
}
?>
I get no crash but the expected error message "SQLSTATE[42S02]:
pdo_oci_handle_factory: ORA-12154: TNS:could not resolve the connect
identifier specified".
Can you please try again with a 5.3.0 snapshot from
http://snaps.php.net/? Thanks!
------------------------------------------------------------------------
[2007-07-23 06:57:36] romande at gmail dot com
Description:
------------
pdo_oci crash when trying to connect to db with bad instance name/or
user name/ or password, or db is down.
Reproduce code:
---------------
make $db to point to not existing db instance/to db which is down
include("config.inc");
try{
$this->conn = new PDO($db, $db_username,$db_password,
array(PDO::ATTR_PERSISTENT => true));
}catch (PDOException $e)
{
include("config.inc");
$logger = &Log::singleton('file', $file, 'DBManager.php', $conf,
$logLevel);
$logger->log("Failed connecting to DB: ".$e->getMessage(),
PEAR_LOG_ERR);
// $logger->log("DB error. Continuing without DB.", PEAR_LOG_INFO);
}
Expected result:
----------------
It's expected that "catch" statement will catch the exception
Actual result:
--------------
script crashes with message in apache log:
*** glibc detected *** free(): invalid pointer: 0xb71e6ec4 ***
[Mon Jul 23 09:08:17 2007] [notice] child pid 7065 exit signal Aborted
(6)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=42075&edit=1
Thread (5 messages)