ID: 35332 User updated by: joh at deworks dot net Reported By: joh at deworks dot net Status: Open Bug Type: PDO related Operating System: Linux PHP Version: 5CVS-2005-11-22 (snap) New Comment:
Actually, the same thing happens when doing: $statement->execute(array('name' => 'date', 'data' => 'Foo!')); Previous Comments: ------------------------------------------------------------------------ [2005-11-22 15:45:21] joh at deworks dot net Description: ------------ PHP segfaults when using PDO: PGSQL and prepared statements with bindParam() and execute(). Reproduce code: --------------- $dsn = 'pgsql:...'; $user = '...'; $pass = '...'; $db = new PDO($dsn, $user, $pass); $statement = $db->prepare("INSERT INTO testinggrounds (name, data) VALUES (:name, :data)"); $statement->execute(array('date', date('r'))); echo "First statement OK\n"; $statement->bindParam(':name', $name); $statement->bindParam(':data', $data); echo "Params bound to PHP variables\n"; // Insert a row $name = 'date'; $data = 'test'; $statement->execute(); echo "Second statement OK\n"; Expected result: ---------------- First statement OK Params bound to PHP variables Second statement OK Actual result: -------------- First statement OK Params bound to PHP variables Segmentation fault GDB backtrace: (gdb) run Starting program: /usr/local/bin/php PDO_dbg.php [Thread debugging using libthread_db enabled] [New Thread -1217852832 (LWP 19309)] First statement OK Params bound to PHP variables Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1217852832 (LWP 19309)] 0xb7d9f50a in pqHandleSendFailure () from /usr/lib/libpq.so.4 (gdb) bt #0 0xb7d9f50a in pqHandleSendFailure () from /usr/lib/libpq.so.4 #1 0xb7da0091 in PQexecPrepared () from /usr/lib/libpq.so.4 #2 0x0813d505 in pgsql_stmt_execute (stmt=0x85b0104, tsrm_ls=0x8439018) at /shared/src/php/php5-200511221330/ext/pdo_pgsql/pgsql_statement.c:122 #3 0x0813704a in zif_PDOStatement_execute (ht=0, return_value=0x85b0604, return_value_ptr=0x0, this_ptr=0x85b3b6c, return_value_used=0, tsrm_ls=0x8439018) at /shared/src/php/php5-200511221330/ext/pdo/pdo_stmt.c:424 #4 0x082be11e in zend_do_fcall_common_helper_SPEC (execute_data=0xbfae2b6c, tsrm_ls=0x8439018) at zend_vm_execute.h:188 #5 0x082bd70a in execute (op_array=0x859524c, tsrm_ls=0x8439018) at zend_vm_execute.h:88 #6 0x08298a4e in zend_execute_scripts (type=8, tsrm_ls=0x8439018, retval=Variable "retval" is not available. ) at /shared/src/php/php5-200511221330/Zend/zend.c:1090 #7 0x0825affa in php_execute_script (primary_file=0xbfae4f6c, tsrm_ls=0x8439018) at /shared/src/php/php5-200511221330/main/main.c:1704 #8 0x08332977 in main (argc=2, argv=0xbfae5054) at /shared/src/php/php5-200511221330/sapi/cli/php_cli.c:1039 (gdb) bt full #0 0xb7d9f50a in pqHandleSendFailure () from /usr/lib/libpq.so.4 No symbol table info available. #1 0xb7da0091 in PQexecPrepared () from /usr/lib/libpq.so.4 No symbol table info available. #2 0x0813d505 in pgsql_stmt_execute (stmt=0x85b0104, tsrm_ls=0x8439018) at /shared/src/php/php5-200511221330/ext/pdo_pgsql/pgsql_statement.c:122 S = (pdo_pgsql_stmt *) 0x85b028c H = (pdo_pgsql_db_handle *) 0x859a06c status = Variable "status" is not available. (gdb) Thanks ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=35332&edit=1