Manuel created CXF-8895:
---------------------------

             Summary: Deadlock with new HttpClientHTTPConduit using large 
payloads against offline SOAP Server
                 Key: CXF-8895
                 URL: https://issues.apache.org/jira/browse/CXF-8895
             Project: CXF
          Issue Type: Bug
    Affects Versions: 3.6.1, 3.6.0, 3.6.2
            Reporter: Manuel


Hello,

 

we are discovered an issue that causes a deadlock with large payloads which 
exceeds the chunk-length (that is used as buffer size for an PipedInputStream) 
when sending a message to a currently offline/not-available server.

Even when setting the {{ConnectionTimeout}} for the HTTPConduit to e.g., 
1000ms, the timeout does not occur. (the {{ReceiveTimeout}} works as expected)

The feature that introduced the new HttpClientHTTPConduit was CXF-8840 in 
[Commit|https://github.com/apache/cxf/commit/1e7169c627d6908118f99dc98d774ffb53dd38c6].

 

What was {*}expected{*}:

Any type of timeout-related exception.

 

What *actually* happened:
The thread runs into a deadlock.

 

How to {*}reproduce{*}:

Run {{org.apache.cxf.systest.dispatch.DispatchClientServerTest.testTimeout()}}  
and increase the payload of {{resources/GreetMeDocLiteralReq.xml. The test will 
not terminate after the given timeout, the rest will run indefinitely.}}

The PipedInputStream's read method was never called (server offline), hence the 
PipedOutputStream's write method can't continue to write the data.-> Deadlock.

 

{{Regards,}}

{{Manuel}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to