Closed Bug 1409814 Opened 3 years ago Closed 3 years ago

ghost windows on probuilds.net

Categories

(Core :: DOM: Core & HTML, defect, P3)

defect

Tracking

()

RESOLVED INCOMPLETE
Tracking Status
firefox57 - wontfix
firefox58 - affected

People

(Reporter: froydnj, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: memory-leak, Whiteboard: [MemShrink:P3])

Attachments

(1 file)

[Tracking Requested - why for this release]: preemptively asking for tracking, unsure whether this reproduces on 57. If it does, memory leaks are bad, and we should fix things before we ship.

We had a report on #memshrink today that:

http://www.probuilds.net/champions/details/Maokai

was causing ghost windows in a content process in Nightly in a profile with no addons (yes!):

1,983 (100.0%) -- ghost-windows
├──1,898 (95.71%) ── http://www.probuilds.net/champions/details/Maokai [1898]
└─────85 (04.29%) ++ (38 tiny)

if left around for a while.  The (38 tiny) resolves to:

└─────85 (04.29%) -- (38 tiny)
      ├──14 (00.71%) ── about:blank [14]
      ├──12 (00.61%) ── http://dtm.advertising.com/ids/411f1e96-3bde-4d85-b17e-63749e5f0695 [12]
      ├──12 (00.61%) ── https://dtm.advertising.com/ids/411f1e96-3bde-4d85-b17e-63749e5f0695 [12]
      ├───6 (00.30%) ── about:srcdoc [6]
      ├───6 (00.30%) ── https://www.youtube.com/embed/?el=adunit&controls=0&html5=1&playsinline=1&ps=gvn&showinfo=0&widget_referrer=http%3A%2F%2Fwww.probuilds.net%2Fchampions%2Fdetails%2FMaokai&enablejsapi=1&origin=http%3A%2F%2Fimasdk.googleapis.com&widgetid=1 [6]
      ├───2 (00.10%) ── http://tpc.googlesyndication.com/safeframe/1-0-13/html/container.html [2]
      ├───2 (00.10%) ── https://ads.mediarithmics.com/ads/render?ax=goo&aex=goo&nid=2&rid=6951&gid=4626&mdid=site:web:www.probuilds.net&caid=auc:goo:59e6622e000bce9a0ad3212513093979-0&cid=1847&db=0&uaid=tech:goo:CAESECRdkPX2Pj9KOTvoNKbVh70&clktr=https://adclick.g.doubleclick.net/aclk%3Fsa%3DL%26ai%3DCCKN8LmLmWZqdL6XCzAb58qSYAavS8pRGt5_m34IBwI23ARABIABg-7HygvwJggEXY2EtcHViLTk3OTc3NzYwMDUwMTEwNDDIAQmpAvYEdLxyuLM-4AIAqAMBqgTeAU_Q8FlEAq5KszqXUB4Owc8ToEMGHS8J9GtoXez_kdfiECw3uNfH_Hbd5QoVZzsqp2Rx3OP3nW9-ENJftkRKO-P8K0QZ8AC0OOFx3WdB50TM5RTjJHw0jxjgVjbK3WyzQg-RiPHnNRLijq2T2FJGuo2RnecnMNYa1IsZYRiGuDdTpqsBFftDAZCtFM2bx8w1cAHtdkXnZqss7Qm5vI70Rfo60alNSBVne01ixw_tW39_oWHI0iLg1asQtx0onGmcfbqImnSYuqS1eEtcoNhwhddY6jHkF8JdRW5O_9gz7-AEAYAG7KfdyaaKw5tcoAYhqAemvhvYBwDSCAUIgGEQAQ%26num%3D1%26sig%3DAOD64_2z_N78mw5bVw4tszWqyDDlS9skwg%26client%3Dca-pub-9797776005011040%26adurl%3D&pr=WeZiLgALzpoK0yElAAk5efHZ53XQR1NgngozLg&vid=7091&lat=49.25&lon=4.03333&ph=mics_137c8676&cb=SMNn06 [2]
      ├───1 (00.05%) ── http://aax-eu.amazon-adsystem.com/s/iu3?cm3ppd=1&d=dtb-pub&csif=t&dl=rx
      ├───1 (00.05%) ── http://aax-eu.amazon-adsystem.com/s/v3/pr?exlist=rx&fv=1.0&a=cm&cm3ppd=1
      ├───1 (00.05%) ── http://bcp.crwdcntrl.net/5/c=3614/rand=260411554/pv=y/int=%23OpR%2334130%23www.probuilds.net%20%3A%20Total%20Site%20Traffic/int=%23OpR%2340119%23probuilds.net%20%3A%20Section%20%3A%20champions/int=%23OpR%2354046%23www%20%3A%2030%20Day%20Total%20Site%20Traffic/rt=ifr
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1025857710
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1232451788
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1255412031
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1342376415
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1422813102
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1477034099
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1486652523
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1502192614
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1773142726
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1825257388
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_2070175024
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_2074189714
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_549528238
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_59551708
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_84629539
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_897104740
      ├───1 (00.05%) ── http://imasdk.googleapis.com/js/core/bridge3.182.0_en.html#goog_1829362948
      ├───1 (00.05%) ── http://tpc.googlesyndication.com/sodar/9im3l02I.html
      ├───1 (00.05%) ── http://www.probuilds.net/cpmstar/cpmstar_siteskin_iframebuster.html?cpmstar_siteskin_settings=%7B%22pid%22%3A71185%2C%22centerWidth%22%3A%221002%20px%22%2C%22zIndex%22%3A100%2C%22topPos%22%3A%220px%22%2C%22fixed%22%3A%220%22%7D
      ├───1 (00.05%) ── https://cdn3.doubleverify.com/t2tv7.html
      ├───1 (00.05%) ── https://googleads.g.doubleclick.net/xbbe/pixel?d=CI6fNRD9gEQYrKn6EzAB&v=APEucNV0Q1c1rkRSCZPm-PQdC3KrnD0CaRAoiK_Sqz94oHipvo-4AKcPB8C_RQsH3dLZLVTwvEI5
      ├───1 (00.05%) ── https://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_1901371364
      ├───1 (00.05%) ── https://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_358079806
      ├───1 (00.05%) ── https://imasdk.googleapis.com/js/core/bridge3.180.3_en.html#goog_678593611
      ├───1 (00.05%) ── https://s0.2mdn.net/ads/richmedia/studio/pv2/60119226/20170728071713072/index.html?e=69&renderingType=2&leftOffset=0&topOffset=0&c=M18Jt7LGhh&t=1
      ├───1 (00.05%) ── https://tap2-cdn.rubiconproject.com/partner/scripts/rubicon/emily.html?pc=13610/60466&geo=eu&co=fr
      ├───1 (00.05%) ── https://tpc.googlesyndication.com/sodar/9im3l02I.html
      └───1 (00.05%) ── javascript:'1'

That's a ... little excessive.

Anyway, I can confirm that this is at least partially reproducible.  I opened the above URL, scrolled around for a while (tracking protection off, FWIW), and also opened:

http://www.probuilds.net/champions

from the top bar.

And then I just left it for a while (maybe an hour or two) while I was doing normal browsing and things.  I already have one ghost window:

1 (100.0%) -- ghost-windows
└──1 (100.0%) ── http://us-u.openx.net/w/1.0/pd?plm=10&ph=1a73c9cb-5945-47eb-8b44-bacc7e8a59f1

Presumably I will have more as time goes on, I will try to update.

Not sure whether this reproduces with 57, but asking for tracking just in case.
If the tab is still open, then this isn't a "real" ghost window, but something like bug 1360310. The original issue being reported seems like it could be a real ghost window though.
Attached file memory-report.json.gz
Here's joined a memory measure taken after a few hours of an idle Firefox 56 with just about:home and the abovementionned URL opened.

As the tab was not closed at the time of the measure, it doesn't appear as ghost windows (or at least not as much as the original report).
It was still eating up to more than 7GB of memory for just a single opened tab, which is really really huge.
So I guess there's a double issue here:
First, that there is a really huge memory consumption on this website;
Second that this memory isn't released once the tab is closed.
Considering that, maybe bug should be splitted into two bugs and/or rephrased?

Additional note: the tab seems to show auto-refresh on a very regular basis.
It's interesting that you (and the original reporter, IIRC) see massive memory use and I do not: about:memory says that page is hovering around 15MB.  But then I have had the tab not in the foreground for the entire day, perhaps that makes a difference.

The interesting bits of the about:memory report are:

│  ├──2,208.02 MB (45.88%) -- top(none)
│  │  ├──1,260.33 MB (26.19%) -- detached
│  │  │  ├──1,200.64 MB (24.95%) -- window(http://www.probuilds.net/champions/details/Maokai)
│  │  │  │  ├──1,107.58 MB (23.01%) -- js-compartment(http://www.probuilds.net/champions/details/Maokai, about:blank)
│  │  │  │  │  ├────794.87 MB (16.52%) -- classes
│  │  │  │  │  │    ├──571.40 MB (11.87%) -- class(Function)/objects
│  │  │  │  │  │    │  ├──555.58 MB (11.54%) ── gc-heap [1418]
│  │  │  │  │  │    │  └───15.82 MB (00.33%) ── malloc-heap/slots [1418]
│  │  │  │  │  │    ├──103.40 MB (02.15%) -- class(Object)/objects
│  │  │  │  │  │    │  ├───65.78 MB (01.37%) ── gc-heap [1391]
│  │  │  │  │  │    │  └───37.62 MB (00.78%) ++ malloc-heap
│  │  │  │  │  │    ├───49.12 MB (01.02%) ++ class(Array)/objects
│  │  │  │  │  │    ├───48.43 MB (01.01%) ++ class(<non-notable classes>)/objects
│  │  │  │  │  │    └───22.52 MB (00.47%) ++ class(Call)/objects
│  │  │  │  │  ├────142.95 MB (02.97%) -- scripts
│  │  │  │  │  │    ├───93.47 MB (01.94%) ── gc-heap [1418]
│  │  │  │  │  │    └───49.48 MB (01.03%) ── malloc-heap/data [1418]
│  │  │  │  │  ├────131.54 MB (02.73%) -- type-inference
│  │  │  │  │  │    ├──109.31 MB (02.27%) ── type-scripts [1418]
│  │  │  │  │  │    └───22.23 MB (00.46%) ── allocation-site-tables [1345]
│  │  │  │  │  └─────38.21 MB (00.79%) ++ (3 tiny)
│  │  │  │  ├─────59.37 MB (01.23%) ── style-sheets [1418]
│  │  │  │  └─────33.69 MB (00.70%) ++ (2 tiny)
│  │  │  └─────59.69 MB (01.24%) ++ (446 tiny)
│  │  └────947.69 MB (19.69%) -- ghost
│  │       ├──854.81 MB (17.76%) ++ (438 tiny)
│  │       └───92.88 MB (01.93%) -- window(https://www.youtube.com/embed/?el=adunit&controls=0&html5=1&playsinline=1&ps=gvn&showinfo=0&widget_referrer=http%3A%2F%2Fwww.probuilds.net%2Fchampions%2Fdetails%2FMaokai&enablejsapi=1&origin=http%3A%2F%2Fimasdk.googleapis.com&widgetid=1)
│  │           ├──53.82 MB (01.12%) ++ js-compartment(https://www.youtube.com/embed/?el=adunit&controls=0&html5=1&playsinline=1&ps=gvn&showinfo=0&widget_referrer=http%3A%2F%2Fwww.probuilds.net%2Fchampions%2Fdetails%2FMaokai&enablejsapi=1&origin=http%3A%2F%2Fimasdk.googleapis.com&widgetid=1)
│  │           └──39.07 MB (00.81%) ++ (3 tiny)
│  └──1,846.69 MB (38.37%) -- top(http://www.probuilds.net/champions/details/Maokai, id=6442450945)
│     ├──1,810.02 MB (37.61%) -- js-zone(0x12277b000)
│     │  ├────691.00 MB (14.36%) -- shapes
│     │  │    ├──397.71 MB (08.26%) -- gc-heap
│     │  │    │  ├──235.66 MB (04.90%) ── tree
│     │  │    │  ├──156.30 MB (03.25%) ── dict
│     │  │    │  └────5.75 MB (00.12%) ── base
│     │  │    └──293.28 MB (06.09%) -- malloc-heap
│     │  │       ├──243.16 MB (05.05%) ── tree-tables
│     │  │       └───50.13 MB (01.04%) ++ (2 tiny)
│     │  ├────287.59 MB (05.98%) -- lazy-scripts
│     │  │    ├──241.32 MB (05.01%) ── gc-heap
│     │  │    └───46.27 MB (00.96%) ── malloc-heap
│     │  ├────210.41 MB (04.37%) ── type-pool
│     │  ├────203.68 MB (04.23%) -- object-groups
│     │  │    ├──186.90 MB (03.88%) ── gc-heap
│     │  │    └───16.78 MB (00.35%) ── malloc-heap
│     │  ├────115.48 MB (02.40%) -- scopes
│     │  │    ├───76.88 MB (01.60%) ── malloc-heap
│     │  │    └───38.60 MB (00.80%) ── gc-heap
│     │  ├────112.95 MB (02.35%) ++ strings
│     │  ├────111.36 MB (02.31%) ── unused-gc-things
│     │  └─────77.55 MB (01.61%) ++ (9 tiny)
│     └─────36.68 MB (00.76%) ++ active

All of the ghost windows in that tree are variants of http://imasdk.googleapis.com/js/core/bridge3.182.0_en.html =/
Hi Jan, could this be related to Bug 1410420?
Flags: needinfo?(jvarga)
(In reply to Ritu Kothari (:ritu) from comment #4)
> Hi Jan, could this be related to Bug 1410420?

I opened http://www.probuilds.net/champions/details/Maokai and it seems that it doesn't use IndexedDB at all.
So I guess it's not related to bug 1410420.
Flags: needinfo?(jvarga)
Some of the problem here is that it isn't clear that this is really a bug in Firefox. It sounds like the page sits there reloading some ads, and it doesn't clean up the ads properly. It is hard to know without further information whether that is Firefox's bug or not. You could see if the same problem is present in Chrome, but of course maybe they get served different code.
Priority: -- → P3
Whiteboard: [MemShrink] → [MemShrink:P3]
Sounds like a wontfix for 57 based on comment 6.
Track 58- as the problem is not clear right now. Feel free to nominate again if you disagree.
This unfortunately isn't actionable unless we can reproduce it.
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → INCOMPLETE
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.