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

Allow large file download and upload using the Reactive REST Client. #21440

Open
1 of 2 tasks
cescoffier opened this issue Nov 14, 2021 · 10 comments
Open
1 of 2 tasks

Allow large file download and upload using the Reactive REST Client. #21440

cescoffier opened this issue Nov 14, 2021 · 10 comments
Assignees
Labels
area/rest-client kind/epic Large issue with links to sub-issues

Comments

@cescoffier
Copy link
Member

cescoffier commented Nov 14, 2021

Description

Allow large file downloads and uploads using the Reactive REST Client.
Large means that the file size does not fit in memory and back-pressure must be used.
Typically it would allow passing a Multi as a parameter or receiving a Multi.

  • sending Multi<Byte> as file
  • receiving files as Multi<Byte>
@quarkus-bot
Copy link

quarkus-bot bot commented Nov 14, 2021

/cc @michalszynkiewicz

@michalszynkiewicz
Copy link
Member

sending done in #21569

@michalszynkiewicz
Copy link
Member

receiving multipart files as Multi is troublesome.
If there is more than one field in a multipart message, and a user wants to read a field that is after the file first, they won't be able to if we want to do it right.
A solution for it would be storing the downloaded files on disk before giving the control back to the user. WDYT @cescoffier ?

@cescoffier
Copy link
Member Author

it's reasonable, and then back-pressure will apply from the file system.

michalszynkiewicz added a commit to michalszynkiewicz/quarkus that referenced this issue Jan 13, 2022
michalszynkiewicz added a commit to michalszynkiewicz/quarkus that referenced this issue Jan 13, 2022
@michalszynkiewicz michalszynkiewicz removed their assignment Aug 26, 2022
@michalszynkiewicz
Copy link
Member

TBH I don't remember if download wasn't implemented too.
For sure we're missing sending/receiving files as Multi<Byte[]> which would perform better.

CC @Sgitario

@geoand
Copy link
Contributor

geoand commented Nov 10, 2022

@Sgitario you have fixed various things around this, correct?
Can you please have a look and see if this has been properly addressed?

@Sgitario
Copy link
Contributor

Receiving files using Multi<Byte> is still not supported, so we can't close this issue yet.

@geoand
Copy link
Contributor

geoand commented Nov 11, 2022

Okay, thanks

@gastaldi
Copy link
Contributor

gastaldi commented Nov 3, 2023

@geoand Is this issue still valid?

@geoand
Copy link
Contributor

geoand commented Nov 3, 2023

I think so

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/rest-client kind/epic Large issue with links to sub-issues
Projects
Status: Todo
Development

No branches or pull requests

5 participants