You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Andriy Redko (Jira)" <ji...@apache.org> on 2023/06/28 13:43:00 UTC
[jira] [Commented] (CXF-8895) Deadlock instead of timeout with new HttpClientHTTPConduit using large payloads
[ https://issues.apache.org/jira/browse/CXF-8895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17738128#comment-17738128 ]
Andriy Redko commented on CXF-8895:
-----------------------------------
Hey [~dkulp] seems like another related issue, could you please take a look? thank you
> Deadlock instead of timeout with new HttpClientHTTPConduit using large payloads
> -------------------------------------------------------------------------------
>
> Key: CXF-8895
> URL: https://issues.apache.org/jira/browse/CXF-8895
> Project: CXF
> Issue Type: Bug
> Affects Versions: 3.6.0, 3.6.1, 3.6.2
> Reporter: Manuel
> Priority: Major
> Attachments: GreetMeDocLiteralReq.xml
>
>
> Hello,
>
> we discovered an issue that causes a deadlock with large payloads which exceed 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 with commit [1e7169|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}} (or use the attachment provided). The test will not terminate after the given timeout, the test 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)