> > If I shutdown postgres between queries I get:
> 
> > query: 1024: 'select count(*) from pg_class'
> > ResStatus: PGRES_FATAL_ERROR
> > Status: 0
> > except: pqReadData() --  read() failed: errno=32
> > Оборванный канал
> 
> What version are you running, and are you sure you are using libpq
> correctly?  Using psql I see

7.0.2.

And you use PIPE, but I use sockets. If I just do psql -d db, all is as you've said,
but if I do psql -d db -h localhost the pictures is as following:

db=> select count(*) from pg_class;
 count
-------
 28531
(1 row)

db=> select count(*) from pg_class;
pqReadData() --  read() failed: errno=32
Оборванный канал
db=> select count(*) from pg_class;
FATAL 1:  The system is shutting down
NOTICE:  AbortTransaction and not in in-progress state
pqReadData() -- backend closed the channel unexpectedly.
        This probably means the backend terminated abnormally
        before or while processing the request.
 
> regression=# select count(*) from pg_class;
>  count
> -------
>    260
> (1 row)
> 
> < in another window, kill postgres backend >
> 
> regression=# select count(*) from pg_class;
> FATAL 1:  The system is shutting down
> NOTICE:  AbortTransaction and not in in-progress state
> pqReadData() -- backend closed the channel unexpectedly.
>         This probably means the backend terminated abnormally
>         before or while processing the request.
> regression=#
> 
> which looks pretty reasonable.
> 
> I should also point out that in the current system, normal shutdown
> (via pg_ctl stop or 'kill' on the postmaster) produces no such result
> because extant backends are allowed to finish their sessions normally.

-- 
Sincerely Yours,
Denis Perchine

----------------------------------
E-Mail: [EMAIL PROTECTED]
HomePage: http://www.perchine.com/dyp/
FidoNet: 2:5000/120.5
----------------------------------

Reply via email to