ID: 36469 Updated by: [EMAIL PROTECTED] Reported By: levi at alliancesoftware dot com dot au -Status: Open +Status: Feedback Bug Type: PostgreSQL related Operating System: FC3 PHP Version: 5.1.2 New Comment:
What PG version are you using and did you try to upgrade it (and rebuild PHP with the upgraded libs) ? Previous Comments: ------------------------------------------------------------------------ [2006-02-21 08:18:22] levi at alliancesoftware dot com dot au Description: ------------ According to the pg_connection_busy documentation, if pg_get_result is called on a pg_send_query that is currently executing, it should block until results become available. Occasionally this does not happen if the query had an error in it. Reproduce code: --------------- #!/usr/local/bin/php51 <?php $connStr = sprintf("host=%s dbname=%s user=%s password=%s", 'localhost', 'testdb', 'liam', 'liam'); $dbconn = pg_connect($connStr) or die("Could not connect"); $i = 0; while (!pg_connection_busy($dbconn)) { pg_send_query($dbconn, 'i am a syntax error'); pg_get_result($dbconn); $i++; } echo "got a busy signal after $i commands"; ?> Expected result: ---------------- (Loops forever) Actual result: -------------- got a busy signal after 221 commands (actual count varies, but always returns within 1 second. Approximately 1/3 of the time it gives a "happy" run and will loop forever) Note that if the SQL statement was a valid statement, I cannot get the erroneous behaviour to occur. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=36469&edit=1