From: jarismar dot php at gmail dot com
Operating system: irrelevant
PHP version: 5.2CVS-2009-04-24 (CVS)
PHP Bug Type: PDO related
Bug description: PDO_OCI Segfault when using persistent connection
Description:
------------
When using persistent connections apache segfaults at end of the request.
The segfault only happens if some statment has got error.
Reproduced on Windows (XP) and Linux (debian 2.6.29-1-686).
Reproduce code:
---------------
$sDSN = 'oci:dbname=//webreport:1521/adplabs';
$sUserName = 'rpttest82';
$sPassword = 'rpttest82';
$oPDO = new PDO($sDSN, $sUserName, $sPassword, array(PDO::ATTR_PERSISTENT
=> true));
$oPDO->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
try {
$oStatement = $oPDO->prepare('Select x from no_table');
$oStatement->execute();
} catch (Exception $oException) {
print $oException->getMessage()."\n";
}
Expected result:
----------------
SQLSTATE[HY000]: General error: 942 OCIStmtExecute: ORA-00942: table or
view does not exist
(/home/jaris/php-latest/ext/pdo_oci/oci_statement.c:147)
Actual result:
--------------
Windows :
Unhandled exception at 0x0088ad16 (php5ts.dll) in Apache.exe: 0xC0000005:
Access violation reading location 0x002c5cc4.
Debian :
segmentation fault
ALERT - canary mismatch on efree() - heap overflow detected (attacker
'REMOTE_ADDR not set', file 'unknown')
--
Edit bug report at http://bugs.php.net/?id=48070&edit=1
--
Try a CVS snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=48070&r=trysnapshot52
Try a CVS snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=48070&r=trysnapshot53
Try a CVS snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=48070&r=trysnapshot60
Fixed in CVS:
http://bugs.php.net/fix.php?id=48070&r=fixedcvs
Fixed in CVS and need be documented:
http://bugs.php.net/fix.php?id=48070&r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=48070&r=alreadyfixed
Need backtrace:
http://bugs.php.net/fix.php?id=48070&r=needtrace
Need Reproduce Script:
http://bugs.php.net/fix.php?id=48070&r=needscript
Try newer version:
http://bugs.php.net/fix.php?id=48070&r=oldversion
Not developer issue:
http://bugs.php.net/fix.php?id=48070&r=support
Expected behavior:
http://bugs.php.net/fix.php?id=48070&r=notwrong
Not enough info:
http://bugs.php.net/fix.php?id=48070&r=notenoughinfo
Submitted twice:
http://bugs.php.net/fix.php?id=48070&r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=48070&r=globals
PHP 4 support discontinued: http://bugs.php.net/fix.php?id=48070&r=php4
Daylight Savings: http://bugs.php.net/fix.php?id=48070&r=dst
IIS Stability:
http://bugs.php.net/fix.php?id=48070&r=isapi
Install GNU Sed:
http://bugs.php.net/fix.php?id=48070&r=gnused
Floating point limitations:
http://bugs.php.net/fix.php?id=48070&r=float
No Zend Extensions:
http://bugs.php.net/fix.php?id=48070&r=nozend
MySQL Configuration Error:
http://bugs.php.net/fix.php?id=48070&r=mysqlcfg