Skip to content

Proposal: Allow configuring threshold for direct browser download in Console (e.g., from 50GB to 10GB) #3539

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

Open
Fengqiv opened this issue May 13, 2025 · 2 comments

Comments

@Fengqiv
Copy link

Fengqiv commented May 13, 2025

Hi MinIO team,

We've observed an issue when users try to download large files (e.g., 30GB–40GB) via the MinIO web Console. Currently, it seems that only files larger than 50GB are directly handed off to the browser for downloading. For files smaller than that threshold, the Console attempts to buffer the content, which often leads to failed downloads—especially in bandwidth-limited or memory-constrained environments.

After multiple tests, we found that download failures are consistently caused by the Console trying to cache large files instead of delegating the task to the browser. This behavior negatively affects usability for regular users handling large files below 50GB.

Feature Request:
Could you consider making the 50GB threshold configurable, or lowering it (e.g., to 10GB), so that files above a more conservative size are automatically handed off to the browser for direct download?

This would:

Improve reliability of large file downloads.

Reduce memory/buffer pressure on the Console.

Enhance user experience without requiring backend changes.

Thank you for your consideration and for your great work on MinIO!

Best regards

@marktheunissen marktheunissen transferred this issue from minio/minio May 15, 2025
@marktheunissen
Copy link
Contributor

Interesting one, here is the original PR FYI #2964

I have transferred this to the Console repo.

@ramondeklein
Copy link
Collaborator

@dvaldivia Why not remove all download code from the console and just return a signed URL? Then all downloading is handled by the browser. That would make it a lot easier. Or is this "custom" download implemented as a work-around to deal with reverse proxies that implement buffering?

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

No branches or pull requests

3 participants