Closed Bug 1922077 Opened 5 months ago Closed 2 months ago

Enable async event dispatching (remote.events.async.enabled) by default

Categories

(Remote Protocol :: Agent, task, P2)

task
Points:
3

Tracking

(firefox135 fixed)

RESOLVED FIXED
135 Branch
Tracking Status
firefox135 --- fixed

People

(Reporter: whimboo, Assigned: whimboo)

References

(Blocks 2 open bugs, Regressed 1 open bug)

Details

(Whiteboard: [webdriver:m14][wptsync upstream][webdriver:relnote])

Attachments

(3 files, 1 obsolete file)

At a certain point when all events can be dispatched as widget (async) events we should consider turning the preference remote.events.async.enabled on by default. Maybe this should happen for Nightly builds first.

Priority: -- → P3
Whiteboard: [webdriver:m13]
Whiteboard: [webdriver:m13] → [webdriver:backlog]

(In reply to Henrik Skupin [:whimboo][⌚️UTC+2] from comment #0)

At a certain point when all events can be dispatched as widget (async) events we should consider turning the preference remote.events.async.enabled on by default. Maybe this should happen for Nightly builds first.

We actually do not need the widget events to enable the first batch of changes for processing actions in the parent process. For widget events I'm going to add additional preferences for each input type, which will depend on the above preference's value.

Turning on the feature by default requires all known issues to be fixed. I'm certain that we can enable it for the next Firefox 135 train. As such lets move this bug into the M14 milestone.

Depends on: 1871346, 1918610, 1930162
Priority: P3 → P2
Whiteboard: [webdriver:backlog] → [webdriver:m14]

Before enabling the feature we should do some quick performance checks in how much the extra IPC communication delays the processing of the action chain, but not in that detail as initially assumed via bug 1904859.

Depends on: 1931822
Points: --- → 3

Need to decide what to do for the job.

Whiteboard: [webdriver:m14] → [webdriver:triage][webdriver:m14]

(In reply to Julian Descottes [:jdescottes] from comment #3)

Need to decide what to do for the job.

Maybe we can leave the async Wd jobs untouched for a couple of days until we have the first widget event for wheel scrolling implemented. Then we could use this job to have these extra preferences (like remote.events.async.wheel.enabled) enabled.

Over the last days since Saturday last week I was not able to find any test failure with the async code enabled that is related to the list of failures in the dependency list. If it stays that way we may consider to push a patch for this bug already next week when the version bump to 135 is done.

Assignee: nobody → hskupin
Status: NEW → ASSIGNED
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6eda5763eee9 [wdspec] Fix expectation for several tests when remote async events are enabled. r=webdriver-reviewers,Sasha

I'm going to land the update for the test expectations but the rest will need to be followed-up by next week. I'm still seeing at least one issue for Marionette integration tests.

Keywords: leave-open
Depends on: 1932916

We discussed this today and agreed on that for now we will keep the async tests active. Soon I will start on the first wheel scroll events that will be send as widget events and we need special test scenarios in CI again. We are going to re-use that test job for it by maybe specifying a specific tag or by passing specific folders only for testing.

Whiteboard: [webdriver:triage][webdriver:m14] → [webdriver:m14]
No longer depends on: 1871346

(In reply to Henrik Skupin [:whimboo][⌚️UTC+2] from comment #10)

We discussed this today and agreed on that for now we will keep the async tests active. Soon I will start on the first wheel scroll events that will be send as widget events and we need special test scenarios in CI again. We are going to re-use that test job for it by maybe specifying a specific tag or by passing specific folders only for testing.

It would make sense to not run those tests by default for the time being but have them available just for try builds. As discussed with Julian I'll make that change and then we can figure out how to continue using these jobs when the first widget event is about to land.

Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/d718674957f8 [wdspec] Fix navigation tests for the perform action commands. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/ad7280231844 [remote] Enable processing and dispatching actions via the parent process by default. r=webdriver-reviewers,taskgraph-reviewers,bhearsum,jdescottes
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/49517 for changes under testing/web-platform/tests
Whiteboard: [webdriver:m14] → [webdriver:m14], [wptsync upstream]

Backed out for causing wpt failures @input-events-get-target-ranges-joining-dl-elements.tentative.html.

Flags: needinfo?(hskupin)
Upstream PR was closed without merging
Depends on: 1935324
No longer depends on: 1935324

The problem with the test input-events-spin-button-click-on-number-input-delete-document.html is that an action actually closes the frame we want to dispatch another action to. I filed bug 1935324 to get this corrected.

For the failure in input-events-get-target-ranges-joining-dl-elements.tentative.html it's still unclear to me what is causing it. As it looks like only the GeckoView Lite package is affected. I've pushed a try build with trace logs enabled to see more details of what's going on given that I cannot run this kind of build locally on my M1 MacBook:

https://treeherder.mozilla.org/jobs?repo=try&revision=653f1f2c9c456fe709167d812e34138395b9d0a4

The failure in input-events-get-target-ranges-joining-dl-elements.tentative.html doesn't happen anymore in my try build after I rebased on latest mozilla-central. Maybe it was a side-effect. I would try landing it again with the other test marked as expected fail.

Flags: needinfo?(hskupin)
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/a0a6da1b41c7 [wdspec] Fix navigation tests for the perform action commands. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/8e40eaab9ad5 [remote] Enable processing and dispatching actions via the parent process by default. r=webdriver-reviewers,taskgraph-reviewers,bhearsum,jdescottes
Upstream PR was closed without merging
Blocks: 1935324
Regressions: 1935698
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6e7923664afa [wdspec] Fix navigation tests for the perform action commands. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/2f4ac27d288f [remote] Enable processing and dispatching actions via the parent process by default. r=webdriver-reviewers,taskgraph-reviewers,bhearsum,jdescottes,jgraham

Backed out for causing wpt failures @input-events-get-target-ranges-joining-dl-elements.tentative.html.

Upstream PR was closed without merging

I pushed a new try build with all the tests in that file set to multiple statuses (fail, timeout, notrun) on Android:
https://treeherder.mozilla.org/jobs?repo=try&revision=655736ade6161b3db34cde3865c05b3b535901eb

Flags: needinfo?(hskupin)
Attachment #9442410 - Attachment is obsolete: true
Pushed by hskupin@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/52ba62ee5d9a [wdspec] Fix navigation tests for the perform action commands. r=webdriver-reviewers,jdescottes https://hg.mozilla.org/integration/autoland/rev/746421efcf13 [remote] Enable processing and dispatching actions via the parent process by default. r=webdriver-reviewers,taskgraph-reviewers,bhearsum,jdescottes,jgraham
Upstream PR merged by moz-wptsync-bot
Status: ASSIGNED → RESOLVED
Closed: 2 months ago
: --- → fixed
Keywords: leave-open
Resolution: --- → FIXED
Whiteboard: [webdriver:m14], [wptsync upstream] → [webdriver:m14][wptsync upstream]
Target Milestone: --- → 135 Branch
Regressions: 1936619
Regressions: 1936804
Regressions: 1937807
Whiteboard: [webdriver:m14][wptsync upstream] → [webdriver:m14][wptsync upstream][webdriver:relnote]
Regressions: 1947112
Regressions: 1947402
Regressions: 1948592
No longer regressions: 1948592
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: