13,000 instances of "'NS_FAILED(rv)'" emitted from dom/storage/SessionStorageManager.cpp during linux64 debug testing

RESOLVED FIXED in Firefox 55

Status

()

Core
DOM
RESOLVED FIXED
a year ago
a year ago

People

(Reporter: erahm, Assigned: baku)

Tracking

(Blocks: 1 bug)

Trunk
mozilla55
Points:
---

Firefox Tracking Flags

(firefox55 fixed)

Details

Attachments

(1 attachment)

> 13004 WARNING: 'NS_FAILED(rv)', file dom/storage/SessionStorageManager.cpp, line 92

This warning [1] shows up in the following test suites:

>    465 - test-linux64/debug-mochitest-browser-chrome-e10s-16 bc16
>    396 - test-linux64/debug-web-platform-tests-6 wpt6
>    390 - test-linux64/debug-web-platform-tests-e10s-6 wpt6
>    371 - test-linux64/debug-mochitest-browser-chrome-15 bc15
>    347 - test-linux64/debug-mochitest-browser-chrome-e10s-9 bc9
>    334 - test-linux64/debug-mochitest-browser-chrome-e10s-1 bc1
>    311 - test-linux64/debug-mochitest-browser-chrome-e10s-15 bc15
>    305 - test-linux64/debug-mochitest-browser-chrome-1 bc1
>    302 - test-linux64/debug-mochitest-browser-chrome-e10s-3 bc3
>    291 - test-linux64/debug-mochitest-browser-chrome-3 bc3
>    289 - test-linux64/debug-mochitest-browser-chrome-16 bc16
>    278 - test-linux64/debug-mochitest-browser-chrome-13 bc13
>    278 - test-linux64/debug-mochitest-browser-chrome-e10s-12 bc12
>    257 - test-linux64/debug-mochitest-jetpack JP
>    202 - test-linux64/debug-mochitest-browser-chrome-11 bc11
>    199 - test-linux64/debug-mochitest-chrome-3 c3
>    196 - test-linux64/debug-mochitest-browser-chrome-6 bc6
>    178 - test-linux64/debug-mochitest-devtools-chrome-10 dt10
>    177 - test-linux64/debug-mochitest-devtools-chrome-e10s-10 dt10
>    167 - test-linux64/debug-mochitest-browser-chrome-e10s-7 bc7
>    158 - test-linux64/debug-mochitest-browser-chrome-5 bc5
>    155 - test-linux64/debug-mochitest-browser-chrome-e10s-5 bc5
>    149 - test-linux64/debug-mochitest-browser-chrome-e10s-11 bc11
>    149 - test-linux64/debug-mochitest-devtools-chrome-5 dt5
>    144 - test-linux64/debug-mochitest-chrome-1 c1
>    142 - test-linux64/debug-mochitest-browser-chrome-e10s-8 bc8
>    139 - test-linux64/debug-mochitest-browser-chrome-10 bc10
>    135 - test-linux64/debug-mochitest-browser-chrome-4 bc4
>    135 - test-linux64/debug-mochitest-browser-chrome-e10s-13 bc13
>    134 - test-linux64/debug-web-platform-tests-e10s-10 wpt10
>    134 - test-linux64/debug-web-platform-tests-10 wpt10
>    132 - test-linux64/debug-mochitest-browser-chrome-14 bc14
>    131 - test-linux64/debug-mochitest-browser-chrome-e10s-14 bc14
>    126 - test-linux64/debug-mochitest-browser-chrome-7 bc7
>    124 - test-linux64/debug-mochitest-browser-chrome-2 bc2
>    122 - test-linux64/debug-mochitest-browser-chrome-e10s-2 bc2
>    121 - test-linux64/debug-web-platform-tests-11 wpt11
>    121 - test-linux64/debug-web-platform-tests-e10s-11 wpt11
>    121 - test-linux64/debug-web-platform-tests-e10s-2 wpt2
>    121 - test-linux64/debug-web-platform-tests-e10s-9 wpt9
>    121 - test-linux64/debug-web-platform-tests-9 wpt9
>    120 - test-linux64/debug-web-platform-tests-3 wpt3
>    120 - test-linux64/debug-web-platform-tests-e10s-3 wpt3
>    119 - test-linux64/debug-mochitest-devtools-chrome-e10s-9 dt9
>    117 - test-linux64/debug-web-platform-tests-2 wpt2
>    117 - test-linux64/debug-firefox-ui-functional-local-e10s en-US
>    115 - test-linux64/debug-mochitest-devtools-chrome-3 dt3
>    115 - test-linux64/debug-firefox-ui-functional-local en-US
>    115 - test-linux64/debug-web-platform-tests-12 wpt12
>    112 - test-linux64/debug-web-platform-tests-e10s-8 wpt8
>    112 - test-linux64/debug-web-platform-tests-8 wpt8
>    112 - test-linux64/debug-web-platform-tests-e10s-12 wpt12
>    109 - test-linux64/debug-mochitest-browser-chrome-e10s-10 bc10
>    108 - test-linux64/debug-web-platform-tests-1 wpt1
>    107 - test-linux64/debug-web-platform-tests-e10s-1 wpt1
>    105 - test-linux64/debug-web-platform-tests-e10s-7 wpt7
>    105 - test-linux64/debug-web-platform-tests-7 wpt7
>    101 - test-linux64/debug-web-platform-tests-4 wpt4
>    101 - test-linux64/debug-web-platform-tests-e10s-4 wpt4
>     99 - test-linux64/debug-mochitest-devtools-chrome-e10s-2 dt2
>     98 - test-linux64/debug-web-platform-tests-5 wpt5
>     98 - test-linux64/debug-web-platform-tests-e10s-5 wpt5
>     89 - test-linux64/debug-mochitest-clipboard cl
>     88 - test-linux64/debug-mochitest-devtools-chrome-1 dt1
>     86 - test-linux64/debug-mochitest-browser-chrome-9 bc9
>     84 - test-linux64/debug-mochitest-devtools-chrome-e10s-8 dt8
>     84 - test-linux64/debug-mochitest-devtools-chrome-e10s-5 dt5
>     83 - test-linux64/debug-mochitest-chrome-2 c2
>     81 - test-linux64/debug-mochitest-browser-chrome-e10s-6 bc6
>     80 - test-linux64/debug-mochitest-1 1
>     78 - test-linux64/debug-mochitest-clipboard-e10s cl
>     76 - test-linux64/debug-mochitest-devtools-chrome-e10s-7 dt7
>     71 - test-linux64/debug-mochitest-e10s-1 1
>     68 - test-linux64/debug-mochitest-10 10
>     66 - test-linux64/debug-mochitest-devtools-chrome-9 dt9
>     59 - test-linux64/debug-mochitest-a11y a11y
>     59 - test-linux64/debug-firefox-ui-functional-remote-e10s en-US
>     56 - test-linux64/debug-firefox-ui-functional-remote en-US
>     56 - test-linux64/debug-mochitest-browser-chrome-e10s-4 bc4
>     52 - test-linux64/debug-mochitest-devtools-chrome-4 dt4
>     50 - test-linux64/debug-mochitest-devtools-chrome-2 dt2
>     48 - test-linux64/debug-mochitest-e10s-10 10
>     48 - test-linux64/debug-mochitest-devtools-chrome-e10s-6 dt6
>     46 - test-linux64/debug-mochitest-devtools-chrome-e10s-4 dt4
>     43 - test-linux64/debug-mochitest-e10s-3 3
>     43 - test-linux64/debug-mochitest-3 3
>     41 - test-linux64/debug-mochitest-devtools-chrome-8 dt8
>     37 - test-linux64/debug-mochitest-browser-chrome-12 bc12
>     29 - test-linux64/debug-mochitest-5 5
>     29 - test-linux64/debug-mochitest-6 6
>     29 - test-linux64/debug-mochitest-devtools-chrome-7 dt7
>     27 - test-linux64/debug-mochitest-e10s-8 8
>     25 - test-linux64/debug-mochitest-2 2
>     24 - test-linux64/debug-mochitest-e10s-2 2
>     24 - test-linux64/debug-mochitest-e10s-5 5
>     23 - test-linux64/debug-mochitest-8 8
>     21 - test-linux64/debug-mochitest-e10s-6 6
>     21 - test-linux64/debug-mochitest-e10s-7 7
>     21 - test-linux64/debug-mochitest-9 9
>     21 - test-linux64/debug-mochitest-browser-chrome-8 bc8
>     21 - test-linux64/debug-mochitest-7 7
>     19 - test-linux64/debug-mochitest-e10s-9 9
>     18 - test-linux64/debug-mochitest-devtools-chrome-e10s-1 dt1
>     17 - test-linux64/debug-mochitest-4 4
>     16 - test-linux64/debug-mochitest-devtools-chrome-e10s-3 dt3
>     15 - test-linux64/debug-mochitest-e10s-4 4
>     13 - test-linux64/debug-mochitest-devtools-chrome-6 dt6
>      8 - test-linux64/debug-mochitest-media-3 mda3
>      8 - test-linux64/debug-mochitest-media-e10s-3 mda3
>      8 - test-linux64/debug-mochitest-gpu-e10s gpu
>      4 - test-linux64/debug-mochitest-webgl-e10s-3 gl3
>      4 - test-linux64/debug-mochitest-webgl-3 gl3
>      4 - test-linux64/debug-crashtest C
>      4 - test-linux64/debug-mochitest-media-2 mda2
>      4 - test-linux64/debug-mochitest-media-e10s-2 mda2
>      4 - test-linux64/debug-crashtest-e10s C
>      3 - test-linux64/debug-mochitest-media-1 mda1
>      3 - test-linux64/debug-web-platform-tests-wdspec-e10s Wd
>      3 - test-linux64/debug-web-platform-tests-wdspec Wd
>      3 - test-linux64/debug-mochitest-media-e10s-1 mda1
>      2 - test-linux64/debug-mochitest-webgl-1 gl1
>      2 - test-linux64/debug-mochitest-webgl-e10s-1 gl1
>      1 - test-linux64/debug-mochitest-webgl-e10s-2 gl2
>      1 - test-linux64/debug-web-platform-tests-reftests Wr
>      1 - test-linux64/debug-mochitest-webgl-2 gl2

It shows up in 6478 tests. A few of the most prevalent:

>    164 - [e10s] Shutdown
>    163 -        Shutdown
>     91 -        jetpack-package/addon-sdk/source/test/test-simple-prefs.js.testUnloadOfDynamicPrefGeneration
>     52 -        browser/components/sessionstore/test/browser_354894_perwindowpb.js
>     51 - [e10s] browser/components/sessionstore/test/browser_354894_perwindowpb.js
>     49 -        dom/tests/browser/browser_focus_steal_from_chrome.js
>     46 -        toolkit/mozapps/extensions/test/browser/browser_bug562797.js
>     45 - [e10s] dom/tests/browser/browser_focus_steal_from_chrome.js
>     45 - [e10s] toolkit/mozapps/extensions/test/browser/browser_bug562797.js
>     39 - [e10s] browser/components/contextualidentity/test/browser/browser_aboutURLs.js

[1] https://hg.mozilla.org/mozilla-central/annotate/cc65f9233e5b/dom/storage/SessionStorageManager.cpp#l92
Bisection points to this range:

https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=159f82e6813c4dca0a72c1fa2a49ec99b087db32&tochange=2e07ae5b0b69519a59d2943b95534bade9b68758

Bug 1322316 seems like the most obvious culprit, Andrea can you take a look?
Flags: needinfo?(amarchesini)
There's also the following warning bisected to the same range:

> 6816 WARNING: 'NS_FAILED(rv)', file dom/storage/SessionStorageManager.cpp, line 170

This warning [1] shows up in the following test suites:

>   4908 - test-linux64/debug-web-platform-tests-3 wpt3
>   1066 - test-linux64/debug-mochitest-devtools-chrome-8 dt8
>    291 - test-linux64/debug-mochitest-7 7
>    232 - test-linux64/debug-mochitest-browser-chrome-15 bc15
>    132 - test-linux64/debug-mochitest-browser-chrome-3 bc3
>     84 - test-linux64/debug-mochitest-devtools-chrome-7 dt7
>     32 - test-linux64/debug-web-platform-tests-7 wpt7
>     12 - test-linux64/debug-mochitest-browser-chrome-10 bc10
>     12 - test-linux64/debug-mochitest-browser-chrome-e10s-16 bc16
>     12 - test-linux64/debug-web-platform-tests-reftests Wr
>     10 - test-linux64/debug-mochitest-chrome-1 c1
>      8 - test-linux64/debug-mochitest-5 5
>      6 - test-linux64/debug-mochitest-2 2
>      4 - test-linux64/debug-web-platform-tests-4 wpt4
>      4 - test-linux64/debug-mochitest-10 10
>      3 - test-linux64/debug-mochitest-6 6

It shows up in 84 tests. A few of the most prevalent:

>   4424 -        /webstorage/storage_setitem.html
>    112 -        browser/components/sessionstore/test/browser_sessionStorage.js
>    110 -        devtools/client/storage/test/browser_storage_sessionstorage_edit.js
>    110 -        devtools/client/storage/test/browser_storage_basic_usercontextid.js
>    102 -        devtools/client/storage/test/browser_storage_delete_usercontextid.js
>     83 -        browser/components/sessionstore/test/browser_broadcast.js
>     78 -        devtools/client/storage/test/browser_storage_sessionstorage_add.js
>     69 -        dom/tests/mochitest/sessionstorage/test_sessionStorageBaseSessionOnly.html
>     58 -        dom/tests/mochitest/sessionstorage/test_sessionStorageClone.html
>     58 -        devtools/client/storage/test/browser_storage_dynamic_updates_sessionStorage.js

[1] https://hg.mozilla.org/mozilla-central/annotate/cc65f9233e5b/dom/storage/SessionStorageManager.cpp#l170
(Assignee)

Comment 3

a year ago
Created attachment 8869311 [details] [diff] [review]
storage.patch

The previous code was not warning when this happens. This is happens because we don't expose sessionStorage for about pages.
Assignee: nobody → amarchesini
Flags: needinfo?(amarchesini)
Attachment #8869311 - Flags: review?(bugs)
Attachment #8869311 - Flags: review?(bugs) → review+

Comment 4

a year ago
Pushed by amarchesini@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/014a4b7b6eec
Remove extra warnings in SessionStorageManage, r=smaug

Comment 5

a year ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/014a4b7b6eec
Status: NEW → RESOLVED
Last Resolved: a year ago
status-firefox55: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
You need to log in before you can comment on or make changes to this bug.