Oleg Kalnichevski created HTTPCLIENT-2428:
---------------------------------------------

             Summary: Improve capacity management by inflating 
AsyncDataConsumers
                 Key: HTTPCLIENT-2428
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2428
             Project: HttpComponents HttpClient
          Issue Type: Improvement
          Components: HttpClient (async)
            Reporter: Oleg Kalnichevski


Presently inflating AsyncDataConsumers propagate capacity information of the 
downstream consumer to the i/o reactor without any adjustment. However,  the 
downstream consumer requesting n bytes of data can easily end up with n * c 
bytes due to data decompression. 

inflating AsyncDataConsumers should intercept `CapacityChannel` methods and 
apply an adjustment to the requested data increment to make it more predictable 
to the downstream consumer. It can be a simple division by c or something more 
clever.

More over, InflatingBrotliDataConsumer at present overrides the capacity 
increment transmitted by the downstream consumer, which looks wrong. This needs 
to be looked into.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to