-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uploading large files will cause unexpected timeouts #706
Comments
Could anyone take a look at it and give me some feedback and suggest ? |
My two cents about this –
Generally speaking, I can imagine that the server builder can have the ability to configure that timeout regarding the request. Say, the function |
Verison
Problem
I'm using http4s to provoid a server which user can upload file to S3 bucket.
I generate a file and try to upload it.
After 30 seconds, it return http code 503, meanwhile, the server log shows as following
Expected behavior
When upload large file, the server should not timeout.
The 30 seconds timeout is from the blaze server setting
responseHeaderTimeout
The comments says
However, the specification does not specify that http header must be passed in 100 response.
So does the AWS s3 REST API implented
When upload file, the server respone something like
It's not a problem when upload small file, however, it will trigger
responseHeaderTimeout
when upload large file because the server only reponse with HTTP code 100 without any HTTP headers.One workaround is to increase
responseHeaderTimeout
time. such asBlazeServerBuilder[F].withResponseHeaderTimeout(5.minutes)
, but this is not a good solution since it will let other request timeout too late.I'm not sure how to improve this , perhaps timeout settings should never be use to close a connection that is currently in use, so long-lived connections may remain open longer than this time.
The text was updated successfully, but these errors were encountered: