massive performance regression for URL completion in Firefox Nightly
Categories
(Firefox :: Address Bar, defect, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr102 | --- | unaffected |
firefox-esr115 | --- | unaffected |
firefox115 | --- | unaffected |
firefox116 | --- | unaffected |
firefox117 | --- | fixed |
People
(Reporter: soeren.hentzschel, Assigned: mak)
References
(Regression)
Details
(Keywords: regression, Whiteboard: [sng])
Attachments
(1 file)
There is a massive performance regression for the URL completion in the address bar in the latest Nightly. After entering a character into the address bar there is now a noticeable delay before the completion happens. As a result I open the wrong websites.
Example:
I enter "ca", a completion to "camp-firefox.de/" happens on my computer. I press the "arrow right" key to get to the end of the URL, then I enter "fo" to get the completion for "camp-firefox.de/forum/". This always worked. Now the completion to "camp-firefox.de/" did not yet happen when I press the "arrow right" cursor and as a result the address bar shows "cafo" instead of "camp-firefox.de/forum" after "ca", "arrow right", "fo".
Unfortunately mozregression can't bisect further than https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=e4d87ff75575880ea0c0fa09b316e360e4d9492f&tochange=511a6a347d490d95f83e47414d604a17e143c218. So I am not sure about the regressor but the patch description from bug 1816572 looks suspicious within this regression range.
Assignee | ||
Comment 1•1 year ago
|
||
This may indicate one of the heuristic providers is slow, and now we wait a bit more for the heuristic results before returning, to avoid serving the wrong result if the user confirms immediately.
With the previous system we could have not autofilled because we were pushing the results at 16ms without any guarantee autofill result was returned.
Do you have add-ons that may be providing address bar results?
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Updated•1 year ago
|
Updated•1 year ago
|
Assignee | ||
Comment 2•1 year ago
•
|
||
Ok, I think I found a bug in the way we unregister pending heuristic providers that causes us to always wait for the whole 200ms timer when the provider doesn't return any result.
In addition, we should probably not wait for the omnibox provider because we have no control over its performance characteristics.
Assignee | ||
Comment 3•1 year ago
|
||
In practice, Bug 1816572 uncovered an existing bug: we await for heuristic providers to be done before returning results, but due to a bug we don't remove from the list providers that don't return results. This never worked in practice.
That's both good (found a bug) and bad (caused a regression).
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 4•1 year ago
|
||
Comment 6•1 year ago
|
||
bugherder |
Reporter | ||
Updated•1 year ago
|
Description
•