Skip to content

fix: HTTP/2 sends now wait up to 5 seconds for flow-control credit instead of returning send_buffer_full#905

Draft
speeddragon wants to merge 1 commit into
benoitc:masterfrom
speeddragon:fix/send_buffer_full
Draft

fix: HTTP/2 sends now wait up to 5 seconds for flow-control credit instead of returning send_buffer_full#905
speeddragon wants to merge 1 commit into
benoitc:masterfrom
speeddragon:fix/send_buffer_full

Conversation

@speeddragon

Copy link
Copy Markdown

Disclaimer: This PR code was generated by AI.

I'm trying to address #895. I'm having the same issue with ex_aws, and this PR modifies the request to wait until a specific time rather than returning {error, send_buffer_full}.

This change allows waiting for the buffer to clear instead of returning an error.

How to use it with ExAws:

  config :ex_aws, :hackney_opts,
    h2_send_timeout: 5_000

Or per request:

  ExAws.request(operation, http_opts: [h2_send_timeout: 10_000]) 

TODO

  • Run rebar3 eunit
  • Update documentation about the new property

@benoitc benoitc self-requested a review July 15, 2026 06:43
@benoitc benoitc self-assigned this Jul 15, 2026
@benoitc

benoitc commented Jul 15, 2026

Copy link
Copy Markdown
Owner

It seems that what you want is blocking send i but is there any reason you need a configurable send wait per request ? I don't see a real use case for h2_send_timeoutand the complexity it adds.

This will change the behabiour though, instead of returnong once the 1MB buffer cap is crossed {error, send_buffer_full} , the application will have to wait for a {error, timeout}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants