php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #39115 PDO Crashes Apache with null value in Postgres prepared statement
Submitted: 2006-10-10 13:30 UTC Modified: 2006-10-18 01:00 UTC
Votes:2
Avg. Score:3.0 ± 0.0
Reproduced:2 of 2 (100.0%)
Same Version:0 (0.0%)
Same OS:2 (100.0%)
From: opensource at videinfra dot com Assigned:
Status: No Feedback Package: PDO related
PHP Version: 5.1.6 OS: MAC OS X
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: opensource at videinfra dot com
New email:
PHP Version: OS:

 

 [2006-10-10 13:30 UTC] opensource at videinfra dot com
Description:
------------
Apache2 crashes when call is made to execute prepared 
statement with null parameters.
Usign PDO-PostgreSQL

Apache 2.0
PostgreSql 8.1
PHP 5,1.6

Reproduce code:
---------------
$dbh=new PDO("pgsql:yourdb");
$sth = $dbh->prepare('SELECT * from "table" WHERE "field1"= ? AND "field2"= ?');
$sth->execute(array(null,null));

<crash>

Actual result:
--------------
Crash reporter output:



Thread 7 Crashed:
0   libpq.4.dylib       0x007b161e parseInput + 6
1   libpq.4.dylib       0x007b1eb6 PQgetResult + 31
2   libpq.4.dylib       0x007b2229 PQexecStart + 50
3   libpq.4.dylib       0x007b242d PQexec + 21
4   libphp5.so          0x020f18ab pgsql_stmt_dtor + 111
5   libphp5.so          0x020ed125 free_statement + 214
6   libphp5.so          0x022ebc06 
zend_objects_store_free_object_storage + 58
7   libphp5.so          0x022bddce shutdown_executor + 947
8   libphp5.so          0x022cc63d zend_deactivate + 226
9   libphp5.so          0x0227d4db php_request_shutdown + 
848
10  libphp5.so          0x0236cbcc php_handler + 2003
11  apache2             0x0001e430 ap_run_handler + 59 
(config.c:152)
12  apache2             0x0001e833 ap_invoke_handler + 87 
(config.c:366)
13  apache2             0x0000cb86 ap_process_request + 375 
(http_request.c:249)
14  apache2             0x00006e1d 
ap_process_http_connection + 297 (http_core.c:253)
15  apache2             0x0002ab62 ap_run_process_connection 
+ 59 (connection.c:43)
16  apache2             0x0002ae80 ap_process_connection + 
69 (connection.c:178)
17  apache2             0x0001b509 worker_thread + 545 
(threadpool.c:683)
18  libapr-0.0.dylib    0x00715f51 dummy_worker + 22 
(thread.c:106)
19  libSystem.B.dylib   0x90023d87 _pthread_body + 84

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-10-10 13:43 UTC] 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-10-18 01:00 UTC] 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-03-01 02:47 UTC] ruben at lingo dot com dot mx
I'm getting the same behavior. When PDO->prepare the thread disconnects 
from postgresql.

SQLite works fine.

Mac OS X tiger 10.4.11
PHP 5.2.3 compiled from source
Postgresql 8.1.3

I have syck loaded from PECL and some PEAR stuff.
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Wed Dec 03 16:00:01 2025 UTC