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)