Skip to content
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

Reactive Rest client can not upload files bigger, than 2G #24405

Closed
fedinskiy opened this issue Mar 18, 2022 · 5 comments · Fixed by #24438
Closed

Reactive Rest client can not upload files bigger, than 2G #24405

fedinskiy opened this issue Mar 18, 2022 · 5 comments · Fixed by #24438
Assignees
Labels
area/rest-client kind/bug Something isn't working
Milestone

Comments

@fedinskiy
Copy link
Contributor

fedinskiy commented Mar 18, 2022

Describe the bug

Quarkus Rest Reactive client fails with OutOfMemory error when uploading files bigger than 2G.

Expected behavior

Reactive client should be able to process files of any size.

Actual behavior

Sending fails with HTTP Request to /client-wrapper/upload-file failed, error id: 6fdd4d92-5bb6-49df-bd70-c5e3671bbad3-1: java.lang.OutOfMemoryError

How to Reproduce?

  1. git clone [email protected]:fedinskiy/quarkus-test-suite.git -b reproducer/reactive-rest-client
  2. cd quarkus-test-suite/http/rest-client-reactive
  3. mvn clean verify -Dit.test=FileIT#uploadFile

Output of uname -a or ver

5.16.13-200.fc35.x86_64

Output of java -version

11.0.12, vendor: GraalVM Community

GraalVM version (if different from Java)

No response

Quarkus version or git rev

2.7.4.Final

Build tool (ie. output of mvnw --version or gradlew --version)

Apache Maven 3.8.4 (9b656c72d54e5bacbed989b64718c159fe39b537)

Additional information

See also #24402 for the same error on downloading.

@fedinskiy fedinskiy added the kind/bug Something isn't working label Mar 18, 2022
@quarkus-bot
Copy link

quarkus-bot bot commented Mar 18, 2022

/cc @michalszynkiewicz

@fedinskiy
Copy link
Contributor Author

When File is passed through multipart, the client fails with much more informative Request Entity Too Large. Steps to reporduce are the same, but last step should look like that: mvn clean verify -Dit.test=FileIT#uploadMultipart

@gsmet
Copy link
Member

gsmet commented Mar 18, 2022

@michalszynkiewicz a lot of APIs out there allow to download files (typically the GitHub API).

@geoand
Copy link
Contributor

geoand commented Mar 21, 2022

I'll have a look at the regular file upload part

@geoand geoand self-assigned this Mar 21, 2022
@geoand
Copy link
Contributor

geoand commented Mar 21, 2022

When File is passed through multipart, the client fails with much more informative Request Entity Too Large

This is a message returned by the Server. You need to configure Quarkus with something like: quarkus.http.limits.max-body-size=2050m.
See this for more information

geoand added a commit to geoand/quarkus that referenced this issue Mar 21, 2022
geoand added a commit to geoand/quarkus that referenced this issue Mar 21, 2022
geoand added a commit to geoand/quarkus that referenced this issue Mar 21, 2022
geoand added a commit to geoand/quarkus that referenced this issue Mar 21, 2022
geoand added a commit that referenced this issue Mar 21, 2022
Support large file uploads with Reactive REST Client
@quarkus-bot quarkus-bot bot added this to the 2.8 - main milestone Mar 21, 2022
@gsmet gsmet modified the milestones: 2.8.0.CR1, 2.7.6.Final May 24, 2022
gsmet pushed a commit to gsmet/quarkus that referenced this issue May 24, 2022
fedinskiy added a commit to fedinskiy/quarkus-test-suite that referenced this issue Jun 1, 2022
fedinskiy added a commit to fedinskiy/quarkus-test-suite that referenced this issue Jun 3, 2022
fedinskiy added a commit to fedinskiy/quarkus-test-suite that referenced this issue Jun 3, 2022
fedinskiy added a commit to fedinskiy/quarkus-test-suite that referenced this issue Jun 6, 2022
fedinskiy added a commit to fedinskiy/quarkus-test-suite that referenced this issue Jun 6, 2022
fedinskiy added a commit to fedinskiy/quarkus-test-suite that referenced this issue Jun 8, 2022
pjgg pushed a commit to pjgg/quarkus-test-suite that referenced this issue Jun 14, 2022
quarkusio/quarkus#24402
quarkusio/quarkus#24405
quarkusio/quarkus#24415
quarkusio/quarkus#25028
Additionally: delete temporary files to speed up local execution
(cherry picked from commit 565a6fd)
pjgg pushed a commit to pjgg/quarkus-test-suite that referenced this issue Jun 14, 2022
quarkusio/quarkus#24402
quarkusio/quarkus#24405
quarkusio/quarkus#24415
quarkusio/quarkus#25028
Additionally: delete temporary files to speed up local execution
(cherry picked from commit 565a6fd)
fedinskiy added a commit to quarkus-qe/quarkus-test-suite that referenced this issue Jun 14, 2022
quarkusio/quarkus#24402
quarkusio/quarkus#24405
quarkusio/quarkus#24415
quarkusio/quarkus#25028
Additionally: delete temporary files to speed up local execution
(cherry picked from commit 565a6fd)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/rest-client kind/bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants