pipe error on 64bit

Marco Atzeri marco.atzeri@gmail.com
Mon Jun 23 09:33:00 GMT 2014


On 23/06/2014 11:20, Corinna Vinschen wrote:
> On Jun 20 16:59, Marco Atzeri wrote:
>> Hi,
>>


>>    600    6791 [main] pg_regress 8200 transport_layer_pipes::write: error
>> writing to pipe, error = 233
>>     27    6818 [main] pg_regress 8200 __set_errno: virtual ssize_t
>> transport_layer_pipes::write(void*, size_t):223 setting errno 22
>>     28    6846 [main] pg_regress 8200 client_request::send: request body
>> write failure: only 18446744073709551615 bytes sent of 36, error = 22(233)
>>                       ^^^ ?
>
> 8 byte signed integer -1, accidentally printed as unsigned value.  I
> fixed that in CVS.  Write returned -1 here because the pipe write
> returned an error code 233, ERROR_PIPE_NOT_CONNECTED.  It looks like the
> client process died for some reason.  This reason is not visible in the
> output of cygserver, of course.

Hi Corinna,
sorry, I realized after sending, that I was looking at a red herring.
The real error = 233 was clearly already there.

I have identified what is going wrong on the process at the other side
of the pipe : an unexpected output from getaddrinfo for the "127.0.0.1" 
case; but not yet why as an equivalent test case is working like charm.

I suspect a incorrectly initialized pointer given as input
to getaddrinfo in a corner case.

> Corinna
Marco



--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list