Last Comment Bug 715474 - Successive zombie compartments with add-on "Screengrab (fix version)" 0.96.3c
: Successive zombie compartments with add-on "Screengrab (fix version)" 0.96.3c
Status: RESOLVED FIXED
[MemShrink:P3]
:
Product: Firefox
Classification: Client Software
Component: Untriaged (show other bugs)
: 12 Branch
: All All
: -- normal (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
:
Mentors:
https://addons.mozilla.org/en-US/fire...
Depends on:
Blocks: LeakyAddons ZombieCompartments
  Show dependency treegraph
 
Reported: 2012-01-05 04:49 PST by Loic
Modified: 2012-02-22 13:04 PST (History)
9 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments

Description Loic 2012-01-05 04:49:16 PST
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0a1) Gecko/20120104 Firefox/12.0a1
Build ID: 20120104031035

Steps to reproduce:

It's a bug report just for the record because the relevant add-on is reported as EOL by its author and reported as incompatible with FF9+ (but major functions work).

The leaky add-on is Screengrab 0.96.3 (see https://addons.mozilla.org/en-US/firefox/addon/1146 ) that allows you to take a snapshot (selection, visible portion, complete page, window) of the webpage you're visiting.

STR:
1) Create a new profile and enable the add-on bar
2) Install Screengrab 0.96.3 from https://addons.mozilla.org/en-US/firefox/addon/screengrab/ (Add-on Compatibility Reporter is eventually necessary to force the compatibility of Screengrab in FF9+)
3) Open about:memory?verbose
4) Open http://my.yahoo.com/ (heavy JS website) in another tab
5) Click on Screengrab icon, select "Save > Visible portion..." and save the snapshot as PNG image
6) Close the tab http://my.yahoo.com/
7) Return to about:memory?verbose, hit the "minimize memory usage" button few times and wait for 5 min to observe the zombie compartment:

│  ├───6,643,432 B (14.68%) -- compartment(http://my.yahoo.com/)
│  │   ├──4,358,144 B (09.63%) -- gc-heap
│  │   │  ├──2,028,304 B (04.48%) -- arena
│  │   │  │  ├──2,001,488 B (04.42%) -- unused
│  │   │  │  ├─────17,024 B (00.04%) -- headers
│  │   │  │  └──────9,792 B (00.02%) -- padding
│  │   │  ├──1,039,136 B (02.30%) -- objects
│  │   │  │  ├────707,328 B (01.56%) -- non-function
│  │   │  │  └────331,808 B (00.73%) -- function
│  │   │  ├────551,920 B (01.22%) -- shapes
│  │   │  │    ├──269,352 B (00.60%) -- dict
│  │   │  │    ├──227,496 B (00.50%) -- tree
│  │   │  │    └───55,072 B (00.12%) -- base
│  │   │  ├────360,496 B (00.80%) -- strings
│  │   │  ├────287,856 B (00.64%) -- scripts
│  │   │  └─────90,432 B (00.20%) -- type-objects
│  │   ├────533,728 B (01.18%) -- script-data
│  │   ├────528,032 B (01.17%) -- shapes-extra
│  │   │    ├──361,472 B (00.80%) -- tree-tables
│  │   │    ├───98,272 B (00.22%) -- dict-tables
│  │   │    ├───47,680 B (00.11%) -- tree-shape-kids
│  │   │    └───20,608 B (00.05%) -- compartment-tables
│  │   ├────457,504 B (01.01%) -- object-slots
│  │   ├────327,680 B (00.72%) -- mjit-code
│  │   ├────157,496 B (00.35%) -- type-inference
│  │   │    ├──121,296 B (00.27%) -- object-main
│  │   │    └───36,200 B (00.08%) -- tables
│  │   ├────141,312 B (00.31%) -- analysis-temporary
│  │   └────139,536 B (00.31%) -- string-chars

8) Open https://bugzilla.mozilla.org/ (low JS website) in another tab
9) Click on Screengrab icon, select "Save > Visible portion..." and save the snapshot as PNG image
10) Close the tab https://bugzilla.mozilla.org/
11) Return to about:memory?verbose, hit the "minimize memory usage" button few times and wait for 5 min to observe the new zombie compartment succeeding to the previous one:

│  ├─────222,256 B (00.50%) -- compartment(https://bugzilla.mozilla.org/)
│  │     ├──143,360 B (00.33%) -- gc-heap
│  │     │  ├──125,272 B (00.28%) -- arena
│  │     │  │  ├──124,344 B (00.28%) -- unused
│  │     │  │  ├──────560 B (00.00%) -- headers
│  │     │  │  └──────368 B (00.00%) -- padding
│  │     │  ├───10,712 B (00.02%) -- shapes
│  │     │  │   ├───3,816 B (00.01%) -- dict
│  │     │  │   ├───3,680 B (00.01%) -- base
│  │     │  │   └───3,216 B (00.01%) -- tree
│  │     │  ├────6,032 B (00.01%) -- objects
│  │     │  │    ├──5,024 B (00.01%) -- function
│  │     │  │    └──1,008 B (00.00%) -- non-function
│  │     │  ├──────768 B (00.00%) -- type-objects
│  │     │  └──────576 B (00.00%) -- scripts
│  │     ├───65,536 B (00.15%) -- mjit-code
│  │     ├────6,784 B (00.02%) -- shapes-extra
│  │     │    ├──4,416 B (00.01%) -- compartment-tables
│  │     │    ├──2,016 B (00.00%) -- dict-tables
│  │     │    ├────256 B (00.00%) -- tree-shape-kids
│  │     │    └─────96 B (00.00%) -- tree-tables
│  │     ├────5,120 B (00.01%) -- object-slots
│  │     ├────1,344 B (00.00%) -- type-inference
│  │     │    └──1,344 B (00.00%) -- tables
│  │     └──────112 B (00.00%) -- script-data


Actual results:

Each time you take a snapshot, Screengrab 0.96.3 releases the memory of the previous zombie compartment and a new zombie compartment is created. Especially when the website is heavy in JS, the zombie compartment may be large.
Comment 1 Dão Gottwald [:dao] 2012-01-05 05:08:29 PST
Note that Screengrab doesn't officially support Firefox 4 and later.
Comment 2 Justin Lebar (not reading bugmail) 2012-01-05 05:58:46 PST
> It's a bug report just for the record because the relevant add-on is reported as EOL by its author 
> and reported as incompatible with FF9+ (but major functions work).

If the author no longer supports the add-on, then this is wontfix, right?
Comment 3 Loic 2012-01-05 06:12:45 PST
I emailed the author Andy Mutton, let's see if he will reply in 1 week or 2. Then close it as wontfix, I think.
Comment 4 Justin Lebar (not reading bugmail) 2012-01-05 06:15:20 PST
sgtm!
Comment 5 Loic 2012-01-23 03:17:39 PST
18 days after my email to author Andy Mutton, no reply. So I think you can close this bug as wontfix.
Comment 6 Justin Lebar (not reading bugmail) 2012-01-23 05:57:47 PST
Jorge, is this a candidate for a nag screen on AMO?
Comment 7 Dão Gottwald [:dao] 2012-01-23 06:02:19 PST
(In reply to Justin Lebar [:jlebar] from comment #6)
> Jorge, is this a candidate for a nag screen on AMO?

The addon isn't compatible with recent versions of Firefox. Nobody has investigated whether this bug exists with Firefox 3.6, as far as I can tell.
Comment 8 Justin Lebar (not reading bugmail) 2012-01-23 06:04:34 PST
> reported as incompatible with FF9+ (but major functions work).

Indeed; I forgot about this.  If it's incompatible then I don't care.
Comment 9 Jorge Villalobos [:jorgev] 2012-01-23 07:38:48 PST
I just added Screengrab to the compatibility override list, so that Firefox 10 and above will flag it as incompatible.
Comment 10 Dão Gottwald [:dao] 2012-01-23 07:41:02 PST
Add-ons that are incompatible with Firefox 4 won't be considered compatible anyway.
Comment 11 Jorge Villalobos [:jorgev] 2012-01-23 07:52:37 PST
It is marked as compatible with 6.* on AMO.
Comment 12 Dão Gottwald [:dao] 2012-01-23 08:02:11 PST
Huh, I thought I saw a max version of 3.6 when I checked this a few weeks ago. I either misread this, or Andy (CC'd to this bug, btw) is actually still active and updated the version range.
Comment 13 Andy Mutton 2012-01-23 10:10:18 PST
It doesn't work consistently on all platforms with any versions past 5 I think. 
Things changed and I don't have the time or inclination to keep messing with it to make it work.
If I ever start thinking about working on this again I'll look at this bug, but that is extremely unlikely.

There is, however, a version that someone is bumping the compatibility numbers on...
https://addons.mozilla.org/en-US/firefox/addon/screengrab-fix-version/

Whoever they are, they might care.
Comment 14 Nicholas Nethercote [:njn] (on vacation until July 11) 2012-01-24 00:41:50 PST
Let's reopen this for the "(fix version)" version.

I tried to find the new author's email but failed.
Comment 15 Loic 2012-01-24 05:41:00 PST
I think it's a trivial fork they did, only to bump the maxversion, not really a full maintenance of the previous add-on.
Comment 16 Jorge Villalobos [:jorgev] 2012-02-08 14:16:54 PST
I sent a message to the developer of the fork.
Comment 17 Leszek Zyczkowski 2012-02-15 17:14:34 PST
I tested new 0.96.4c version and not observe zombie compartment.
Comment 18 Loic 2012-02-16 07:10:47 PST
Is the 0.96.4c version available on AMO?
Comment 19 Jorge Villalobos [:jorgev] 2012-02-16 07:39:46 PST
I don't see it anywhere. Teo, where did you find this version?
Comment 20 Leszek Zyczkowski 2012-02-16 07:56:21 PST
(In reply to Jorge Villalobos [:jorgev] from comment #19)
> I don't see it anywhere. Teo, where did you find this version?

This version is here:
https://addons.mozilla.org/en-US/firefox/addon/screengrab-fix-version/versions/
Comment 21 Jorge Villalobos [:jorgev] 2012-02-16 08:03:24 PST
Right. I forgot this was about the fork and not the original.
Comment 22 Jorge Villalobos [:jorgev] 2012-02-22 13:04:24 PST
This is fixed in the "fix version" now, and the old version is marked incompatible in Firefox 10 and above.

Note You need to log in before you can comment on or make changes to this bug.