-
Notifications
You must be signed in to change notification settings - Fork 2.1k
allow edge to gc chunks #31825
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 edge to gc chunks #31825
Conversation
|
maybe this even prevents ie from freezing as well. |
|
upstream PR: blueimp/jQuery-File-Upload#3508 |
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
21fd58d to
d472c6a
Compare
Codecov Report
@@ Coverage Diff @@
## master #31825 +/- ##
===========================================
- Coverage 63.45% 63.25% -0.2%
+ Complexity 18785 18457 -328
===========================================
Files 1158 1158
Lines 69718 69319 -399
Branches 1261 1261
===========================================
- Hits 44237 43846 -391
+ Misses 25111 25103 -8
Partials 370 370
Continue to review full report at Codecov.
|
|
seems this PR changed approach completely? @butonic did the new approach work ? at least it looks much less intrusive! |
|
It works for EdgeHTML 17 (the current stable version for Win 10). It does not work for EdgeHTML 15. Which is what is being used. Still an improvement. Without this Edge will eat memory the size of every upload and restart the process when 5GB have been reached. You can monitor the memory being eaten live in the dev tools memory tab. https://www.browserstack.com/test-on-microsoft-edge-browser allows you to test EdgeHTML 15 and 17 in your browser for free. |
|
We could still put this in though ? |
|
Yes, should be put in. Prevents memory leak and crash when uploading large file with EdgeHTML 16 or greater. |
|
backport to 10 needed |
|
failing test unrelated |
caldav/carddav drone jobs changed a few days ago (last week?). A rebase here will pick all that up and the jobs will pass. |
PVince81
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 looks safe, merging
|
@butonic please backport |
|
stable10: #31884 |
Edge has a hard 5GB memory limit. currently chunked uploading seems to use one indirection too many so edge will never garbage collect the chunks Blob objects.
Unsetting them manually after a chunk is completed is not enough. The memory tab in edge won't show you the objects on the heap, but overall memory consumption will still increase.
This pr allows cs to happen by removing the actual data before passing the options to the anonymous handler: https://github.com/owncloud/core/compare/update-jqfu-fix-edge-oom?expand=1#diff-9e1e26ed9e6e26bd68c321b010edc0d9R772
The other changes stem from a bump to the latest version, which has some cool things like blueimp/jQuery-File-Upload#3486 that would allow us to use dynamic chunk sizes based on the network bandwith.