MozillaZine

[Ext] uBlock Origin

Announce and Discuss the Latest Theme and Extension Releases.
gorhill
 
Posts: 146
Joined: February 10th, 2015, 8:00 am

Post Posted August 30th, 2017, 9:10 am

GHM113 wrote:Will transition to indexedDB cause performance regressions? In other words, is uBO using indexedDB slower than uBO using browser.storage.local?

It's the opposite: browser.storage.local is not supposed to be used for large amount of data (which is what the filter lists and compiled filter lists are). Follow details in issue: https://github.com/gorhill/uBlock/issues/2925

JOJ0
 
Posts: 95
Joined: November 13th, 2006, 11:33 pm

Post Posted August 30th, 2017, 11:04 am

Hi, some matchpatern errors from console on 55.0.3 caused by uBlock:
Code: Select all
 Invalid match pattern: 'ws://*/*'  MatchPattern.jsm:58
   SingleMatchPattern resource://gre/modules/MatchPattern.jsm:58:7
   this.MatchPattern/this.matchers< resource://gre/modules/MatchPattern.jsm:125:34
   map self-hosted:291:17
   this.MatchPattern resource://gre/modules/MatchPattern.jsm:125:21
   addContentPolicy resource://gre/modules/WebRequestContent.js:54:21
   receiveMessage resource://gre/modules/WebRequestContent.js:62:9
   waitForSyncCallback resource://services-common/async.js:98:7
   makeSpinningCallback/callback.wait resource://services-common/async.js:168:27
   promiseSpinningly resource://services-common/async.js:234:12
   _fetchInfo resource://services-sync/service.js:470:14
   sync resource://services-sync/stages/enginesync.js:79:16
   onNotify resource://services-sync/service.js:1081:7
   WrappedNotify resource://services-sync/util.js:160:21
   WrappedLock resource://services-sync/util.js:116:16
   _lockedSync resource://services-sync/service.js:1071:12
   sync/< resource://services-sync/service.js:1063:7
   WrappedCatch resource://services-sync/util.js:91:16
   sync resource://services-sync/service.js:1052:5
   sync self-hosted:941:17
   waitForSyncCallback resource://services-common/async.js:98:7
   makeSpinningCallback/callback.wait resource://services-common/async.js:168:27
   _handlerListener resource://services-sync/addonsreconciler.js:634:9
   onEnabled resource://services-sync/addonsreconciler.js:646:5
   callAddonListeners resource://gre/modules/AddonManager.jsm:1678:11
   callAddonListeners resource://gre/modules/AddonManager.jsm:3203:5
   updateAddonDisabledState resource://gre/modules/addons/XPIProvider.jsm:4594:11
   set userDisabled resource://gre/modules/addons/XPIProvider.jsm:5480:9
   doCommand chrome://mozapps/content/extensions/extensions.js:1347:9
   set_userDisabled chrome://mozapps/content/extensions/extensions.xml:1126:13
   oncommand about:addons:1:1
Invalid match pattern: 'wss://*/*'  MatchPattern.jsm:58
   SingleMatchPattern resource://gre/modules/MatchPattern.jsm:58:7
   this.MatchPattern/this.matchers< resource://gre/modules/MatchPattern.jsm:125:34
   map self-hosted:291:17
   this.MatchPattern resource://gre/modules/MatchPattern.jsm:125:21
   addContentPolicy resource://gre/modules/WebRequestContent.js:54:21
   receiveMessage resource://gre/modules/WebRequestContent.js:62:9
   waitForSyncCallback resource://services-common/async.js:98:7
   makeSpinningCallback/callback.wait resource://services-common/async.js:168:27
   promiseSpinningly resource://services-common/async.js:234:12
   _fetchInfo resource://services-sync/service.js:470:14
   sync resource://services-sync/stages/enginesync.js:79:16
   onNotify resource://services-sync/service.js:1081:7
   WrappedNotify resource://services-sync/util.js:160:21
   WrappedLock resource://services-sync/util.js:116:16
   _lockedSync resource://services-sync/service.js:1071:12
   sync/< resource://services-sync/service.js:1063:7
   WrappedCatch resource://services-sync/util.js:91:16
   sync resource://services-sync/service.js:1052:5
   sync self-hosted:941:17
   waitForSyncCallback resource://services-common/async.js:98:7
   makeSpinningCallback/callback.wait resource://services-common/async.js:168:27
   _handlerListener resource://services-sync/addonsreconciler.js:634:9
   onEnabled resource://services-sync/addonsreconciler.js:646:5
   callAddonListeners resource://gre/modules/AddonManager.jsm:1678:11
   callAddonListeners resource://gre/modules/AddonManager.jsm:3203:5
   updateAddonDisabledState resource://gre/modules/addons/XPIProvider.jsm:4594:11
   set userDisabled resource://gre/modules/addons/XPIProvider.jsm:5480:9
   doCommand chrome://mozapps/content/extensions/extensions.js:1347:9
   set_userDisabled chrome://mozapps/content/extensions/extensions.xml:1126:13
   oncommand about:addons:1:1
Invalid match pattern: 'ws://*/*'  MatchPattern.jsm:58
Invalid match pattern: 'wss://*/*'  MatchPattern.jsm:58

gorhill
 
Posts: 146
Joined: February 10th, 2015, 8:00 am

Post Posted August 31st, 2017, 10:21 am

The whole webext release of uBO is a mess. The webext-hybrid issue is one that should have been fixed in 55 given how developers are pushed to publish their webext asap. The many weeks of dev build led me to believe this was a rather rare issue, not worth delaying delaying the migration to webext -- and for which there was an easy workaround (uninstall/reinstall). Turned out this affects a whole lot more people than I expected given the feedback received on the dev build side, and apparently the workaround was not that reliable.

The other core issue is that the implementation of browser.storage.local is just a dud[1][3], nowhere ready for actual real life usage. If I had known that I would never have released the webext version.

People most affected are those running Firefox 32-bit[2] -- this downright breaks Firefox/uBO or any other similar extensions -- i.e. Firefox/ABP. Turned out the issue had been reported months ago[1], and when I became aware of it and I added my own comment to the issue, I was not yet aware of the whole implications. I was blandly advised that their implementation of the storage API (somehow as opposed to the Chromium implementation) was not for large chunk of data. Nowhere was this documented.

Still, I scrambled to follow the advise of the developer to instead use indexedDB, just to find out today that this storage is actually rather limited in capacity (~40MB), and again this causes many users to end up again with a broken Firefox/uBO -- just keep on reading the issue below to see for yourself. I have no clue now what to do. So I just found out I worked on code -- as advised by Firefox devs -- which I might just have to scrap because it has its own issues. As a volunteer coder, I won't waste more time on trying to fix the current release on AMO, there is nothing I can do anyway. I will look into all this again when I feel like whatever I do won't be wasted time, energy and sleep -- I plan on having good night sleep from now on.

**EDIT:** I was wrong about storage limit, I didn't see one when I tested stuff today. Also, re-reading myself above is cringing, I was clearly frustrated with all the widespread breakage of webext-hybrid, and my wrong conclusion that storage was limited. Sorry about this.

***

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1371255

[2] The fact that uBO is efficient enough to be used on lower end computers is a point of pride, I like to think I can be of help for people with less resources.

[3] https://bugzilla.mozilla.org/show_bug.cgi?id=1395213
Last edited by gorhill on September 1st, 2017, 10:58 am, edited 1 time in total.

GHM113

User avatar
 
Posts: 676
Joined: December 16th, 2015, 3:59 am
Location: Moscow, Russia

Post Posted August 31st, 2017, 11:29 am

gorhill wrote:Still, I scrambled to follow the advise of the developer to instead use indexedDB, just to find out today that this storage is actually rather limited in capacity (~40MB), and again this causes many users to end up again with a broken Firefox/uBO -- just keep on reading the issue below to see for yourself.

I guess you are talking about this comment: https://bugzilla.mozilla.org/show_bug.c ... 371255#c21
I can't confirm what this guy says. I've just loaded Firefox 55.0.3 x32 with latest uBO beta from AMO, went to settings - selected all available subscriptions, updated them, closed Firefox, launched Firefox, here is the result:
Image
I haven't noticed any performance regressions: startup time is ok, single tab loading time is ok, uBO settings are preserved after restart. I think I am missing something but this comment clearly states indexedDB is in the folder on the screenshot: https://github.com/gorhill/uBlock/issue ... -326056523
What am I missing? I am an idiot ](*,)
Sorry for my poor English.

gorhill
 
Posts: 146
Joined: February 10th, 2015, 8:00 am

Post Posted August 31st, 2017, 11:43 am

Ok the pure webext version of uBO was finally released on AMO, that is one of the serious issue out of the way. Feels a bit better.

Now the indexedDB thing is the main issue left.

JOJ0
 
Posts: 95
Joined: November 13th, 2006, 11:33 pm

Post Posted August 31st, 2017, 11:43 am

@gorhil - well understood. Have a nice rest till the dust settles down.

gorhill
 
Posts: 146
Joined: February 10th, 2015, 8:00 am

Post Posted August 31st, 2017, 11:47 am

GHM113 wrote:
gorhill wrote:What am I missing?

I don't know. I tried on my side, just selecting all the lists under "Multipurpose" (on top of default) and I hit the issue described in the bugzilla entry -- MVPS wouldn't load. One explanation might be the total storage available -- see https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API/Browser_storage_limits_and_eviction_criteria.

EDIT 1: I can reproduce the issue with Firefox 55. I cannot reproduce it with Nightly when selecting the same set of filter lists.

EDIT 2: I was wrong about storage limit, there is none as far as I can tell. I modified the release notes to correct this information.
Last edited by gorhill on September 1st, 2017, 10:54 am, edited 1 time in total.

Brummelchen
 
Posts: 2728
Joined: March 19th, 2005, 10:51 am

Post Posted August 31st, 2017, 1:29 pm

is this file also an issue in other browsers?
https://github.com/uBlockOrigin/uAssets ... ources.txt

Virtual_ManPL

User avatar
 
Posts: 1913
Joined: July 24th, 2008, 5:52 am

Post Posted August 31st, 2017, 1:36 pm

@ gorhill - Still, thank you very much for your hard work! =D>

Next thing, I can recommend (or at least what I will do in this place to avoid uproar) is releasing new uBlock Orgin versions:
for Firefox up to version 56 = uBlock Orgin based on version 1.13.8 or latest full legacy
for Firefox version 57 and up = uBlock Orgin based on version 1.14.0 or latest full WebExtension
+ forget webext-hybrid version ;)
Virtualfox persona

Are you ready for deprecation of XUL & XBL & XPCOM extensions? Not?! Try Firefox ESR

gorhill
 
Posts: 146
Joined: February 10th, 2015, 8:00 am

Post Posted September 1st, 2017, 10:59 am

I corrected my statements above regarding storage limitations, I was wrong, there is no such limitation. Sorry for erroneous information.

MarkRH

User avatar
 
Posts: 1190
Joined: September 12th, 2007, 2:30 am
Location: Oklahoma City, OK

Post Posted September 1st, 2017, 2:31 pm

Well, I made a post here: https://discourse.mozilla.org/t/support ... 7?u=markrh

Using Firefox 55.0.3 and have uBlock 1.14.0 and when the extension is enabled and I press F5 on a tab with https://twitter.com/ loaded, it stalls out and page never loads. If I press the Refresh button on the navigation bar, it stalls out and never loads. If I click the X which gives a blank white page and then Refresh, the page loads. Pressing CTRL-F5 works fine. Note, just turning it off for Twitter.com does not work, I have to completely disable the extension. How can I better troubleshoot this?

On my 52 ESR version with UBlock 1.13.8 with exact same filters being used, Twitter doesn't behave this way.
Last edited by MarkRH on September 1st, 2017, 3:19 pm, edited 1 time in total.

Vitesse
 
Posts: 1211
Joined: April 21st, 2011, 6:03 pm

Post Posted September 1st, 2017, 2:59 pm

Further to MarkRH's post, I've seen some very peculiar - but similar - behaviour on eBay (both the UK and main sites - I didn't check any others!) The majority of internal links - but not all of them - loaded and apparently completed in the address bar, but the page didn't change. In some cases it seemingly didn't stop loading, as though it was in a loop, so I'd have to do a manual stop. In both circumstances, pressing reload loaded the requested page. Same when trying to navigate away from eBay - the requested page had clearly loaded in the address bar but wasn't shown until I pressed reload. This was on both W7 and W10 64-bit systems and Fx 55.0.3. No difference whether or not logged in. Started with 1.13.10 and again in 1.14.0. Like Mark, I had to completely disable uBO - disabling it on the site via ctrl/click made no difference.

In the end I found I had to completely uninstall uBO (which of course meant I lost all my custom filters!) and revert to 1.13.8, on which I've disabled updates!

MarkRH

User avatar
 
Posts: 1190
Joined: September 12th, 2007, 2:30 am
Location: Oklahoma City, OK

Post Posted September 1st, 2017, 3:27 pm

Well, with a clean profile with just uBlock 1.14.0 installed and same 3rd-party filters, Twitter behaves normally. So, I must have a conflict with some extension. Try disabling everything but uBlock and see what happens and enable them a few at a time.

MarkRH

User avatar
 
Posts: 1190
Joined: September 12th, 2007, 2:30 am
Location: Oklahoma City, OK

Post Posted September 1st, 2017, 3:51 pm

So far if I install any one of these extensions, it craps out again:

Add Bookmark Here ² 55.0.20170705
Extension List Dumper 2 1.0.2
Add to Search Bar 2.9
Html Validator 0.9.7.4
CoLT 2.6.7
Context Search 0.6.4

With these extensions it is working fine so far:
Classic Theme Restorer 1.7.0beta2 true ClassicThemeRestorer@ArisT2Noia4dev
Classic Toolbar Buttons 1.5.8beta3 true CSTBB@NArisT2_Noia4dev
Download Status Bar 15.0.0.1 true {6c28e999-e900-4635-a39d-b1ec90ba0c0f}
Easy Youtube Video Downloader Express 9.17 true {b9acf540-acba-11e1-8ccb-001fd0e08bd4}
Emoji Cheatsheet for GitHub, Basecamp etc. 2.0.1 true jid1-Xo5SuA6qc1DFpw@jetpack
FireGestures 1.11.1 true firegestures@xuldev.org
RoboForm Toolbar 8.2.9.5 true {22119944-ED35-4ab1-910B-E619EA06A115}
Status-4-Evar 2017.03.19.12b true status4evar@caligonstudios.com
Stylish 2.0.7 true {46551EC9-40F0-4e47-8E18-8E5CF550CFB8}
Tab Mix Plus 0.5.0.4 true {dc572301-7619-498c-a57d-39143191b318}
uBlock Origin 1.14.0 true uBlock0@raymondhill.net

gorhill
 
Posts: 146
Joined: February 10th, 2015, 8:00 am

Post Posted September 1st, 2017, 6:21 pm

MarkRH wrote:So far if I install any one of these extensions, it craps out again:

Add Bookmark Here ² 55.0.20170705
Extension List Dumper 2 1.0.2
Add to Search Bar 2.9
Html Validator 0.9.7.4
CoLT 2.6.7
Context Search 0.6.4

Are these all legacy extensions?

Return to Extension/Theme Releases


Who is online

Users browsing this forum: No registered users and 2 guests