New issue
Advanced search Search tips

Issue 703310 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug


Participants' hotlists:
dmurph-tracking


Sign in to add a comment

Blobs from XHR's seem to stick around forever when DevTools is open

Project Member Reported by dmu...@chromium.org, Mar 20 2017

Issue description

Only go away when the page reloads
 

Comment 1 by ricea@chromium.org, Mar 21 2017

Components: Blink>Network>XHR
It will be deleted when the GC runs. I confirmed that with --js-flags="--expose-gc" and chrome://blob-internals.

Comment 3 by dmu...@chromium.org, Mar 21 2017

Cc: mwills@google.com
I'm getting this report from +mwills. Mitchell can you confirm whether or not you were seeing this?

Comment 4 by mwills@google.com, Mar 21 2017

Yah initially they were being held onto forever because devtools was open.
However, even with devtools closed I still have problems because the blobs I download are not gced. I have code that is more or less:

  download chunk to blob
  save blob to indexedDB
  nolonger reference original blob
  repeat

However, the downloads in /tmp eventually build up and the machine runs out of space in that partition. It looks like potentially the blobs simply aren't getting gced (doing things like opening dev tools sometimes causes the storage usage to drop).

Comment 5 by mwills@google.com, Mar 21 2017

I did a few more tests.

When I run with the --expose-gc flag and call gc() after I remove my reference to the blob the blobs get deleted (space is reclaimed on /tmp and they disappear from chrome://blob-internals/). This seems to indicate that my issue is chrome is not gcing my blobs so blob storage still things there is a reference. Maybe when available space in /tmp becomes low chrome should trigger a GC or something? Although it would be great if there was a way to do it today in stable chrome. Using Blob#close doesn't seem to help at all (not sure if that's been gutted or not).
devtools should not retain anything, please attach a snippet of the code for us to investigate.

Comment 7 by mwills@google.com, Mar 22 2017

To reproduce:
Create a large file called "large": fallocate -l 1GB large
Serve "large" and the attached page in chrome with --js-flags="--expose-gc"
if you watch the available space in /tmp it will go down and then go back up after about 1GB (after the download completes and gc is called). However, if you open up devtools (and wait for the current request to complete) the available space in /tmp will continue to decline until the partition runs out of space.

index.html
607 bytes View Download

Comment 8 by dmu...@chromium.org, Apr 18 2017

Cc: dmu...@chromium.org
Components: Platform>DevTools
Owner: pfeldman@chromium.org
Sounds like a devtools bug then? Assigning to pfeldman for triage.

Comment 9 by dmu...@chromium.org, Apr 18 2017

I'm going to make a blob-side bug for gc importance / accounting for large blobs.
Labels: -dmurph-shortlist-bugs
Also relates to https://bugs.chromium.org/p/chromium/issues/detail?id=712693
Owner: allada@chromium.org
Summary: Blobs from XHR's seem to stick around forever when DevTools is open (was: Blobs from XHR's seem to stick around forever)
Status: Archived (was: Assigned)
Status: Available (was: Archived)
why was this archived?
Status: Assigned (was: Available)
(feel free to change back to archived, just wondering why)
Owner: eostroukhov@chromium.org
Owner: hhli@chromium.org
Labels: -Pri-3 Pri-2
Owner: jarhar@chromium.org

Sign in to add a comment