Re: Re: [GENERAL] libpq error codes - Mailing list pgsql-patches

From Denis Perchine
Subject Re: Re: [GENERAL] libpq error codes
Date
Msg-id 0006222257170C.00479@dyp
Whole thread Raw
In response to Re: Re: [GENERAL] libpq error codes  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Re: [GENERAL] libpq error codes
List pgsql-patches
> > db=> select count(*) from pg_class;
> > pqReadData() -- backend closed the channel unexpectedly.
> >         This probably means the backend terminated abnormally
> >         before or while processing the request.
> > The connection to the server was lost. Attempting reset: Failed.
> > !>
>
> > Looks much more reasonable. But I do not get messages about shutdown.
> > With a patch enclosed it will perform like with ECONNRESET.
> > Shouldn't I emulate EOF when EPIPE?
>
> You *are* emulating EOF --- with that check in place, pqReadData
> should respond to EPIPE just like it does to a normal EOF.  I don't
> understand why you aren't seeing the same results I do.

Hmmm... Looks like I get EPIPE just after connection reset, but you are able
to read the rest of the data... Looks like Linux kernel problem again...

> How exactly are you testing this?  I'm doing it with a plain "kill"
> on the connected backend process.  If you were using "kill -9"
> or some such, that'd explain it --- the backend doesn't have an
> opportunity to send the "I'm shutting down" message in that case.

kill -TERM for sure.

--
Sincerely Yours,
Denis Perchine

----------------------------------
E-Mail: dyp@perchine.com
HomePage: http://www.perchine.com/dyp/
FidoNet: 2:5000/120.5
----------------------------------

pgsql-patches by date:

Previous
From: Tom Lane
Date:
Subject: Re: Re: [GENERAL] libpq error codes
Next
From: Tom Lane
Date:
Subject: Re: Re: [GENERAL] libpq error codes