Fix the query editor behaviour with COPY

If you run something like:

copy (select * from pg_stat_activity) to stdout;

in the query editor, it will hang forever. The code in
pgQueryThread::execute() doesn't check for a PGRES_COPY_OUT result, and
calls PQgetResult() repeatedly. PQgetResult() will keep on returning
PGRES_COPY_OUT until the copy output is read with PQgetCopyData(), so it
gets stuck. COPY FROM STDIN has a similar problem.

This patch fixes that. For COPY TO STDOUT, it prints the first
100 rows to the message display. For COPY FROM STDIN, it throws an error.

Branch
------
master

Details
-------
http://git.postgresql.org/gitweb?p=pgadmin3.git;a=commitdiff;h=ea8fcb232324194614e99c54109232efc8157729
Author: Heikki Linnakangas <hlinnakan...@vmware.com>

Modified Files
--------------
CHANGELOG                          |    2 +
pgadmin/db/pgQueryThread.cpp       |   62 ++++++++++++++++++++++++++++++++++--
pgadmin/include/db/pgQueryThread.h |    2 +
3 files changed, 63 insertions(+), 3 deletions(-)


-- 
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers

Reply via email to