Over on bug 1771012 the `GeckoViewTabUtil.createNewTab()` API has been added to allow testing code like Marionette for wpt tests to open a new tab in any GeckoView application. As discovered on bug 1522790 comment 53 there is a race condition which let thousands of wpt tests intermittently timeout when the actual test page gets loaded. This happens because the method returns too early and concurrent navigations (initial page load + load of the test page) seem to break the progress listener. The underlying reason for this would need to be investigated and I'll file a separate bug under DOM given that we have similar issues on desktop as well, whereby there it's happening way lesser. To fix this API I'm proposing to exchange the currently used `geckoview-window-created` notification with the `browser-delayed-startup-finished` one, which actually indicates that the window has been finished loading. Then with my patch on bug 1522790 we will wait long enough to not trigger the racy path, and that will allows us to remove around 14.000 intermittent timeout meta data entries across all wpt tests!
Bug 1891008 Comment 0 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Over on bug 1771012 the `GeckoViewTabUtil.createNewTab()` API has been added to allow testing code like Marionette for wpt tests to open a new tab in any GeckoView application. As discovered on bug 1522790 comment 53 there is a race condition which let thousands of wpt tests intermittently timeout when the actual test page gets loaded. This happens because the method returns too early and concurrent navigations (initial page load + load of the test page) seem to break the progress listener. The underlying reason for this would need to be investigated and I'll file a separate bug under DOM given that we have similar issues on desktop as well, whereby there it's happening way lesser. To fix this API I'm proposing to exchange the currently used `geckoview-window-created` notification with the `browser-delayed-startup-finished` one, which actually indicates that the window has been finished loading. Then with my patch on bug 1522790 we will wait long enough to not trigger the racy path, and that will allows us to remove around [14.000 intermittent timeout meta data entries](https://hg.mozilla.org/try/rev/f15a7be1c01f761a1b1d626d6e1f4b2cfbd99b25) across all wpt tests!