TL;DR - We have reduced the amount of runtime warnings during testing by 90%.

As of today we are down to 66K warnings during linux64 debug testing; this is 
down from >600K back in June. There are bugs on file for most of the remaining 
top offenders blocking tracking bug 765224 [1]. It's time to declare victory, 
or at least transition to a skirmish, or perhaps an extended conflict. It's 
been a fun ride, I've more than surpassed my goal of a sub 100K count and it's 
time for me to write some real code again.

Reducing the amount of warnings has made it *much* easier to weed out real bugs 
and many of the remaining warnings most likely *are* bugs.

This is where you can help out: take a look at the tracking bug (and the 
following list) and see if there is a warning in an area you can help out with. 
Even just triaging by adding a needinfo? for folks who could help out would be 
super helpful.

For those interested I have put up my (somewhat sketchy) set of scripts for 
parsing logs and counting warnings on github [2]. Contributions and feedback 
are welcome.

Going forward I can think of a few interesting projects for the automation 
inclined:
  - Setup some sort of daily warning analysis, bisect and send out nag emails
  - Add support for automatically filing bugs to the log spam scripts
  - Turn the tree red if warnings go over some threshold
  - Get to a warning free startup state, add tests that enforce no new warnings 
on startup

Again, please take a moment to go over the list, file more bugs and clean out 
unhelpful warnings so that we can focus on the real issues

Big thanks to smaug, bz, dholbert and everyone else who helped get patches up, 
reviewed and in general dealt with my incessant nagging.

-e

The final countdown:

TOP 40
======
   3997 [NNNNN] WARNING: Please do not use mouseenter/leave events in chrome. 
They are slower than mouseover/out!: '!nsContentUtils::IsChromeDoc(d)', file 
dom/events/EventListenerManager.cpp, line 370
   2523 [NNNNN] WARNING: '!mContentCache.CacheEditorRect(this, 
&aIMENotification)', file widget/PuppetWidget.cpp, line 833
   2523 [NNNNN] WARNING: '!editorRectEvent.mSucceeded', file 
widget/ContentCache.cpp, line 256
   1156 [NNNNN] WARNING: NS_ENSURE_TRUE(selCon) failed: file 
editor/libeditor/nsEditor.cpp, line 631
   1112 [NNNNN] WARNING: No inner window available!: file 
dom/base/nsGlobalWindow.cpp, line 10013
   1080 [NNNNN] WARNING: Failed to unlock the wakelock.: '!rv.Failed()', file 
dom/html/HTMLMediaElement.cpp, line 2354
   1049 [NNNNN] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 
0x80004005: file extensions/spellcheck/src/mozInlineSpellChecker.cpp, line 1995
    948 [NNNNN] WARNING: Failed to retarget HTML data delivery to the parser 
thread.: file parser/html/nsHtml5StreamParser.cpp, line 951
    918 [NNNNN] WARNING: NS_ENSURE_TRUE(selection->RangeCount()) failed: file 
editor/libeditor/nsHTMLEditRules.cpp, line 320
    892 [NNNNN] WARNING: Silently denied access to property |undefined|: Access 
to privileged JS object not permitted 
(@resource://gre/modules/commonjs/toolkit/loader.js -> 
resource://gre/modules/devtools/server/actors/script.js:1149): file 
js/xpconnect/wrappers/XrayWrapper.cpp, line 208
    824 [NNNNN] WARNING: attempt to modify an immutable nsStandardURL: file 
netwerk/base/nsStandardURL.cpp, line 1264
    823 [NNNNN] WARNING: NS_ENSURE_TRUE(selcon) failed: file 
editor/libeditor/nsEditor.cpp, line 658
    823 [NNNNN] WARNING: NS_ENSURE_SUCCESS(res, nullptr) failed with result 
0xC1F30001: file editor/libeditor/nsEditor.cpp, line 667
    687 [NNNNN] WARNING: Trying to spellcheck, but checking seems to be 
disabled: 'mPendingSpellCheck', file 
extensions/spellcheck/src/mozInlineSpellChecker.cpp, line 907
    684 [NNNNN] WARNING: NS_ENSURE_TRUE(aSelection->RangeCount()) failed: file 
editor/libeditor/nsEditor.cpp, line 3725
    684 [NNNNN] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 
0x80004005: file editor/libeditor/nsEditor.cpp, line 3704
    683 [NNNNN] WARNING: NS_ENSURE_SUCCESS(res, res) failed with result 
0x80004005: file editor/libeditor/nsHTMLEditRules.cpp, line 8083
    675 [NNNNN] WARNING: Re-registering a CID?: file 
xpcom/components/nsComponentManager.cpp, line 551
    655 [NNNNN] WARNING: NS_ENSURE_SUCCESS(rv, BadImage(newImage)) failed with 
result 0x80004005: file image/ImageFactory.cpp, line 248
    653 [NNNNN] WARNING: NS_ENSURE_TRUE(globalObject && 
globalObject->GetGlobalJSObject()) failed: file dom/base/nsDocument.cpp, line 
8323
    628 [NNNNN] WARNING: Suboptimal indexes for the SQL statement 
0x7f30821a34a0 (http://mzl.la/1FuID0j).: file 
storage/mozStoragePrivateHelpers.cpp, line 109
    604 [NNNNN] WARNING: NS_ENSURE_SUCCESS(status, status) failed with result 
0x805303F4: file dom/security/nsCORSListenerProxy.cpp, line 542
    600 [NNNNN] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 
0x805E000F: file dom/xbl/nsXBLService.cpp, line 732
    597 [NNNNN] WARNING: '!aCharRect.width', file widget/ContentCache.cpp, line 
317
    593 [NNNNN] WARNING: NS_ENSURE_SUCCESS(rv, NS_ERROR_XBL_BLOCKED) failed 
with result 0x805303F4: file dom/xbl/nsXBLService.cpp, line 900
    588 [NNNNN] WARNING: Failed to open external DTD: publicId "" systemId 
"staff.dtd" base 
"http://mochi.test:8888/tests/dom/tests/mochitest/dom-level1-core/files/staff.xml";
 URL "resource://gre/res/dtd/staff.dtd": file 
parser/htmlparser/nsExpatDriver.cpp, line 705
    564 [NNNNN] WARNING: Page was shift reloaded, skipping ServiceWorker 
control: file dom/base/nsDocument.cpp, line 4736
    564 [NNNNN] WARNING: Image width or height is non-positive: file 
layout/base/nsLayoutUtils.cpp, line 6233
    521 [NNNNN] WARNING: NS_ENSURE_TRUE(aNode) failed: file 
editor/libeditor/nsEditor.cpp, line 3390
    514 [NNNNN] WARNING: aTargetFrame should be related with aTargetContent: 
'!aTargetFrame || !aTargetFrame->GetContent() || aTargetFrame->GetContent() == 
aTargetContent || aTargetFrame->GetContent()->GetFlattenedTreeParent() == 
aTargetContent', file dom/events/EventStateManager.cpp, line 492
    510 [NNNNN] WARNING: 'NS_FAILED(rv)', file dom/fetch/FetchDriver.cpp, line 
682
    504 [NNNNN] WARNING: NS_ENSURE_TRUE(mTransactionPump || mCachePump) failed: 
file netwerk/protocol/http/nsHttpChannel.cpp, line 6012
    470 [NNNNN] WARNING: Audio Buffer is not full by the end of the callback.: 
'Available() == 0 || mSampleWriteOffset == 0', file 
dom/media/AudioBufferUtils.h, line 87
    464 [NNNNN] WARNING: Enabling vsync refresh driver: file 
layout/base/nsRefreshDriver.cpp, line 860
    462 [NNNNN] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 
0x80040111: file dom/base/nsFrameLoader.cpp, line 267
    461 [NNNNN] WARNING: NS_ENSURE_TRUE(ParseTypeAttribute(type, &version)) 
failed: file dom/base/nsScriptLoader.cpp, line 549
    458 [NNNNN] WARNING: Failed to open external DTD: publicId "STAFF" systemId 
"staffNS.dtd" base 
"http://mochi.test:8888/tests/dom/tests/mochitest/dom-level2-core/files/staffNS.xml";
 URL "resource://gre/res/dtd/staffNS.dtd": file 
parser/htmlparser/nsExpatDriver.cpp, line 705
    453 [NNNNN] WARNING: XPCOM objects created/destroyed from static ctor/dtor: 
file xpcom/base/nsTraceRefcnt.cpp, line 147
    390 WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. 
Use isContentWindowPrivate instead (but only for frame scripts).
    381 [NNNNN] WARNING: Failed to unlock the wakelock.: '!rv.Failed()', file 
dom/html/HTMLVideoElement.cpp, line 256


[1] https://bugzilla.mozilla.org/show_bug.cgi?id=765224
[2] https://github.com/EricRahm/log-spam-hell
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to