[PHP-DEV] Bug #2398: 'END' command to PostgresSQL causing SEGV. From: lucas <email protected>
Date: 09/28/99

From: lucas <email protected>
Operating system: linux 2.2.12
PHP version: 3.0.12
PHP Bug Type: Reproduceable crash
Bug description: 'END' command to PostgresSQL causing SEGV.

Performing a pg_exec($database,"end") on a connection causes the child pid to exit with a SEGV. This may have something to do with PostgreSQL sending a notice message through libpg.

 In the interactive client, psql, there is normally a NOTICE sent to the client:

 webdb=> commit;
 END
 webdb => end;
 NOTICE: EndTransactionBlock and not inprogress/abort state
 END
 webdb => \q

...and in the backtrace (from running http -X inside gdb), the last mentioned function is 'defaultNoticeProcessor()':

#0 0x40222ee1 in ?? ()
#1 0x40185605 in ?? ()
#2 0x4018ceb3 in ?? ()
#3 0x4031fd1b in defaultNoticeProcessor () from /usr/local/pgsql/lib/libpq.so.2.0
#4 0x40320cf0 in getNotice () from /usr/local/pgsql/lib/libpq.so.2.0
#5 0x403202ff in parseInput () from /usr/local/pgsql/lib/libpq.so.2.0
#6 0x40320b4e in PQgetResult () from /usr/local/pgsql/lib/libpq.so.2.0
#7 0x40320ca3 in PQexec () from /usr/local/pgsql/lib/libpq.so.2.0
#8 0x40291a4c in php3_pgsql_exec () at functions/pgsql.c:124

All tested scripts worked 100% when I removed the 'BEGIN'/'COMMIT'/'END' pg_exec() statements.

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe <email protected>
For additional commands, e-mail: php-dev-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>