[
https://issues.apache.org/jira/browse/HTTPCLIENT-1942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16588655#comment-16588655
]
Oleg Kalnichevski commented on HTTPCLIENT-1942:
-----------------------------------------------
I knew it was not going to be that easy.
{quote} The test for the [happy
path|https://github.com/rschmitt/httpcomponents-core/commit/065118886993b05235fc793130ae5c0804d029b8#diff-1a8be7a218920e8829ad007c75de4f09R210]
often hangs forever at {{Future#get}} (but it succeeds when it doesn't
hang{quote}
That should not be happening. The future should get into a completed state no
matter what.
{quote}The test for request errors also hangs forever at Future#get, and
furthermore the exception in the request stream is translated into a GOAWAY
frame instead of a RST_STREAM on the relevant request stream{quote}
That depends on the exception type. If an exception is deemed severe enough to
make the entire connection unreliable for all streams the protocol handler
sends GOAWAY frame to the opposite endpoint.
{quote}I've noticed that my ReactiveDataConsumer is called upon to buffer quite
a bit of data before it ever signals that it has any capacity free. I have seen
it required to buffer hundreds of kilobytes of data across dozens of
consume(ByteBuffer) calls before it ever has a downstream subscriber who
requests data. {quote}
This is perfectly valid as per HTTP/2 specification endpoints must be able to
process the amount of data defined by the initial window setting before they
can update the capacity.
> Add support for Reactive Streams
> --------------------------------
>
> Key: HTTPCLIENT-1942
> URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1942
> Project: HttpComponents HttpClient
> Issue Type: Wish
> Components: HttpClient (async)
> Affects Versions: 5.0 Beta1
> Reporter: Ryan Schmitt
> Priority: Major
> Labels: stuck, volunteers-wanted
> Fix For: Future
>
>
> It would be very helpful to me if the Apache client provided an
> implementation of the [Reactive Streams|http://www.reactive-streams.org/]
> spec, particularly as an implementation of the standard
> [interfaces|https://search.maven.org/artifact/org.reactivestreams/reactive-streams/1.0.2/jar].
> These interfaces are JDK6-compatible and have no other dependencies, but
> they unlock interoperability with many other frameworks, such as RxJava.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]