You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "John Hawkins (JIRA)" <ax...@ws.apache.org> on 2005/11/10 19:36:03 UTC

[jira] Assigned: (AXISCPP-868) "Connection: Close" ignored

     [ http://issues.apache.org/jira/browse/AXISCPP-868?page=all ]

John Hawkins reassigned AXISCPP-868:
------------------------------------

    Assign To: John Hawkins

> "Connection: Close" ignored
> ---------------------------
>
>          Key: AXISCPP-868
>          URL: http://issues.apache.org/jira/browse/AXISCPP-868
>      Project: Axis-C++
>         Type: Bug
>   Components: Transport (Client)
>     Versions: 1.5 Final
>     Reporter: John Hawkins
>     Assignee: John Hawkins
>      Fix For: 1.6 Alpha

>
> Test using a getQuote call to the stub in a loop, with the stub being created
> (new) every 103 times round the loop, then delete and new again. 
> The getQuote service is an ordinary web service.
> On the first getQuote request after being newed, the stub appears to keep the
> TCP/IP connection open for subsequent requests. After 100 requests on the same
> connection, The server closes the connection, and indicates this with a line in the
> HTTP header of the response thus:
> HTTP/1.1 200 OK
> Content-Type: text/xml; charset=utf-8
> Content-Language: en-GB
> Server: WebSphere Application Server/6.0
> Content-Length: 430
> Connection: Close
> Date: Mon, 07 Nov 2005 17:51:06 GMT
> ...<then the normal response>
> The stub does not react to this close request and attempts to send further
> requests down the now closed connection which fail and cause an AxisException
> with an inconsistent variety of codes and messages.
> For instance on Windows we get:
>  test001     101 2005/11/07 18:13:23     100       1         0  Bad: Loop - AxisException
>  test001     101:  HTTPTransportException:Input streaming error while getting data Channel error 10053 while reading dat
> a: 'An established connection was aborted by the software in your host machine.
> '
>  test001     101 Exception Code: 58
>  test001     101 Continuing
>  test001     102 2005/11/07 18:13:23     100       2         0  Bad: Loop - AxisException
>  test001     102:  HTTPTransportException:Unknown Transport Exception No valid socket open
>  test001     102 Exception Code: 56
>  test001     102 Continuing
>  test001     103 2005/11/07 18:13:23     101       2         0 Good: X1455.500  1455.500
> ...
>  test001     203 2005/11/07 18:13:23     200       3         0  Bad: Loop - AxisException
>  test001     203:  HTTPTransportException:Input streaming error while getting data Channel error 10054 while reading dat
> a: 'An existing connection was forcibly closed by the remote host.
> '
>  test001     203 Exception Code: 58
>  test001     203 Continuing
>  test001     204 2005/11/07 18:13:23     200       4         0  Bad: Loop - AxisException
>  test001     204:  HTTPTransportException:Unknown Transport Exception No valid socket open
>  test001     204 Exception Code: 56
>  test001     204 Continuing
>  test001     205 2005/11/07 18:13:23     200       5         0  Bad: Loop - AxisException
>  test001     205:  HTTPTransportException:Unknown Transport Exception No valid socket open
>  test001     205 Exception Code: 56
>  test001     205 Continuing
> ...
> On Linux when the stub tries to use the closed connection, the client is just killed with a 
> 'BROKEN PIPE' message, bypassing any C++ exception handling. See EPIPE in /usr/include/asm/errno.h.
> I think we should re-open the connection when this happens.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira