cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Coogan (JIRA)" <j...@apache.org>
Subject [jira] Updated: (CXF-1245) Thread hangs when processing response message using LocalTransport with dispatchDirect
Date Mon, 03 Dec 2007 16:51:43 GMT

     [ https://issues.apache.org/jira/browse/CXF-1245?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Michael Coogan updated CXF-1245:
--------------------------------

    Description: 
When running requests on a local transport configured with DISPATCH_DIRECT = true, small request/response
messages process successfully but any request that generates a response > 1KB seems to
hang the JVM. The problem appears to be in the PipedInput/OutputStreams. If the buffer (default
size 1024B) fills up it is never flushed and the thread appears to hang in an eternal wait
(PipedInputStream.awaitSpace())

The PipedInput and PipedOutput Streams are on the same thread and therefore the buffer is
never cleared until after the stream is closed. Pipes should never be used on a single thread.
That will definitely cause a hang. Possibly should use a CachedOutputStream and then grab
the inputstream in the dispatchDirect method. 

  was:
When running requests on a local transport configured with DISPATCH_DIRECT = true, small request/response
messages process successfully but any request that generates a response > 1KB seems to
hang the JVM. The problem appears to be in the PipedInput/OutputStreams. If the buffer (default
size 1024B) fills up it is never flushed and the thread appears to hang in an eternal wait
(PipedInputStream.awaitSpace())

The PipedInput and PipedOutput Streams are on the same thread and therefore the buffer is
never cleared until after the stream is closed. Pipes should NEVER be used on a single thread.
That will definitely cause a hang. Possibly should use a CachedOutputStream and then grab
the inputstream in the dispatchDirect method. 


> Thread hangs when processing response message using LocalTransport with dispatchDirect
> --------------------------------------------------------------------------------------
>
>                 Key: CXF-1245
>                 URL: https://issues.apache.org/jira/browse/CXF-1245
>             Project: CXF
>          Issue Type: Bug
>          Components: Transports
>    Affects Versions: 2.0.3
>            Reporter: Michael Coogan
>
> When running requests on a local transport configured with DISPATCH_DIRECT = true, small
request/response messages process successfully but any request that generates a response >
1KB seems to hang the JVM. The problem appears to be in the PipedInput/OutputStreams. If the
buffer (default size 1024B) fills up it is never flushed and the thread appears to hang in
an eternal wait (PipedInputStream.awaitSpace())
> The PipedInput and PipedOutput Streams are on the same thread and therefore the buffer
is never cleared until after the stream is closed. Pipes should never be used on a single
thread. That will definitely cause a hang. Possibly should use a CachedOutputStream and then
grab the inputstream in the dispatchDirect method. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message