Closed Bug 951753 Opened 11 years ago Closed 6 years ago

Many reflows attributed to webconsole.xul making my session slow.

Categories

(DevTools :: Console, defect, P2)

x86
Windows 7
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mconley, Unassigned)

References

Details

(Keywords: perf)

I notice periodically that Nightly can get really janky / stuttery after a while on my Windows 7 box if I have the Browser Console opened. Today, I got ready for it, and made sure I had the Gecko Profiler installed. When I hit the stutters, I dumped the profile and here's what I saw: http://people.mozilla.org/~bgirard/cleopatra/#report=c0af1713beca7e2f7402b904e9c4d152924b3a85 I believe what I'm seeing here are multiple reflows that are being triggered by webconsole.xul. Closing the console seems to make the problem subside - but sometimes I forget I have that window open in the background...and...then...things...get...really...choppy.
I assume you have enabled devtools.webconsole.filter.csslog (Browser Console -> CSS -> Log)?
Sorry, I meant devtools.browserconsole.filter.csslog above.
Nope - here's all of the devtools.webconsole prefs that I've got: devtools.webconsole.filter.warn;true devtools.webconsole.filter.secwarn;true devtools.webconsole.filter.secerror;true devtools.webconsole.filter.networkinfo;true devtools.webconsole.filter.network;true devtools.webconsole.filter.netwarn;true devtools.webconsole.filter.log;true devtools.webconsole.filter.jswarn;true devtools.webconsole.filter.jslog;true devtools.webconsole.filter.info;true devtools.webconsole.filter.exception;true devtools.webconsole.filter.error;true devtools.webconsole.filter.cssparser;false devtools.webconsole.filter.csslog;false devtools.webconsole.filter.csserror;true devtools.webconsole.filter.;true devtools.webconsole.enabled;true
Mike, is it possible that the usage of flex box is these reflows? Is this a recent regression?
(In reply to Mihai Sucan [:msucan] from comment #4) > Mike, is it possible that the usage of flex box is these reflows? Is this a > recent regression? Not sure. I've noticed this occurring off and on for a few weeks, but only today got around to filing it (sorry!).
(In reply to Mike Conley (:mconley) from comment #3) > Nope - here's all of the devtools.webconsole prefs that I've got: But what is the value for devtools.*browserconsole*.css.log?
Sigh, I can't type today. I meant devtools.*browserconsole*.filter.csslog, per comment 2.
D'oh, my bad. devtools.browserconsole.css.log DNE, but I have this under devtools.browserconsole: devtools.browserconsole.filter.warn;true devtools.browserconsole.filter.secwarn;true devtools.browserconsole.filter.secerror;true devtools.browserconsole.filter.networkinfo;true devtools.browserconsole.filter.network;true devtools.browserconsole.filter.netwarn;true devtools.browserconsole.filter.log;true devtools.browserconsole.filter.jswarn;true devtools.browserconsole.filter.jslog;true devtools.browserconsole.filter.info;true devtools.browserconsole.filter.exception;true devtools.browserconsole.filter.error;true devtools.browserconsole.filter.cssparser;true devtools.browserconsole.filter.csslog;false devtools.browserconsole.filter.csserror;true
> devtools.browserconsole.filter.log;true Because of this, when the console opens, reflow observers are attached. To which window the browserconsole is attached to? (type this to know: `window.location.href`) If it's attached to browser.xul, then we listen to reflow from the browser windows. If it's webconsole.xul (I believe this is not supposed to happen), then we listen to reflows from the webconsole, then show the reflow log in the webconsole, which triggers a reflow (infinite loop).
It's actually devtools.browserconsole.filter.csslog the pref that controls the reflow observers, which seems disabled.
(In reply to Panos Astithas [:past] from comment #10) > It's actually devtools.browserconsole.filter.csslog the pref that controls > the reflow observers, which seems disabled. Oops! You're right.
Panos is right about the pref, but... (In reply to Paul Rouget [:paul] from comment #9) > If it's attached to browser.xul, then we listen to reflow from the browser > windows. If it's webconsole.xul (I believe this is not supposed to happen), > then we listen to reflows from the webconsole, then show the reflow log in > the webconsole, which triggers a reflow (infinite loop). This is possible, actually. When there are no other windows left, the browser console uses its own window as a target. This allows the -jsconsole command line option to work. We should probably file a different bug about not allowing css reflow logging when the browser console is attached to itself. Mike, I believe the perf issue is tied to the use of css3 flexbox. I will check if I can do something about this.
See Also: → 968976
Priority: -- → P2
guessing this is still a bug. Bumping.
When Bug 1347127 lands, we'll get rid of this file (the new console is XUL-free), so this won't be an issue anymore.
Depends on: 1347127
Product: Firefox → DevTools
closing as webconsole.xul does not exist anymore
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.