Skip to content

Number of blocked requests on the extension icon appears few seconds late after the webpage loading stops #155

Description

Prerequisites

  • I verified that this is not a filter issue
  • This is not a support issue or a question
  • I performed a cursory search of the issue tracker to avoid opening a duplicate issue
    • Your issue may already be reported.
  • I tried to reproduce the issue when...
    • uBlock Origin is the only extension
    • uBlock Origin with default lists/settings
    • using a new, unmodified browser profile
  • I am running the latest version of uBlock Origin
  • I checked the documentation to understand that the issue I report is not a normal behavior

Description

Number of blocked requests on the extension icon appear second or two late after the webpage load.

A specific URL where the issue occurs

https://www.google.com/

Steps to Reproduce

  1. Disable all extensions and only keep uBO enabled.

  2. Browse to google.com and wait for the page to get loaded and notice that number of blocked requests appear second or two after the page loading stops.

  3. For the sake of comparision, install v1.9.14 side by side and run both versions together on google.com, notice that with v1.9.14, the number of blocked requests appears as soon as the page is loaded but the latest dev build version take a second or two for that number to appear.

  4. Refresh the page few more times to be able to reproduce this issue at will.

Watch the video I have attached below which displays the bug when compared with version v1.9.14 side-by-side. Reproducible on Firefox too but I can't provide a video of side by side comparison due to Firefox not allowing to install two versions side by side.

Expected behavior:

Number of blocked requests on the extension icon appears as soon as the webpage loading stops.

Actual behavior:

Number of blocked requests on the extension icon appears after a second or two late after the webpage loading stops. This started happening after v1.9.14.

Supporting Evidence

https://i.gyazo.com/22ab15443943f1ca7254f1b022beab65.mp4

Your environment

  • uBlock Origin version: 1.16.15rc0
  • Browser Name and version: Chrome 70/Firefox 63
  • Operating System and version: Win 10 x64 1807 build

Activity

  1. ghost changed the title [-]Number of blocked requests on the badge icon appears few seconds late after the webpage loading stops[/-] [+]Number of blocked requests on the extension icon appears few seconds late after the webpage loading stops[/+] on Aug 4, 2018
  2. gorhill commented on Aug 4, 2018

    @gorhill
    Member

    For two reasons:

    1. By design because displaying the block count has the lowest priority among all the tasks uBO has to handle. It would be inefficient to give a higher priority to the badge on the icon, the assumption is that calls to the API framework should be coalesced for efficiency purpose.

    2. Because uBO has to buffer results of the processing of network requests to ensure they are properly reported: uBlock blocking domain but not showing it in the dynamic filtering pane gorhill/uBlock#2053. The fix to this issue required to introduce a delay before deciding what document owns a network request.

  3. gorhill commented on Aug 4, 2018

    @gorhill
    Member

    Pointed out above: gorhill/uBlock#2053. Fixed in 1.9.16.

  4. ghost closed this as completedon Aug 4, 2018
  5. added
    wontfixwon't be addressed
    and removed
    bugSomething isn't working
    on Aug 4, 2018
  6. gorhill commented on Aug 4, 2018

    @gorhill
    Member

    uMatrix is less sensitive to the issue affecting uBO, so I did not port the journaling code in uMatrix.

    uMatrix is less sensitive to the issue because unlike uBO, the slate is not cleared on page reload.

  7. gorhill commented on Aug 4, 2018

    @gorhill
    Member

    Why? It's just a cosmetic "issue", what would be the point to mess with code which works fine as it is?

  8. gorhill commented on Aug 4, 2018

    @gorhill
    Member

    I am going to add an advanced hidden setting to control the timing of journaling.

  9. 2 remaining items

  10. Thorin-II commented on Aug 5, 2018

    @Thorin-II

    @rjkpa FYI you can run concurrent firefox profiles, and even different Ff releases (as long as one is a portable version) - see https://github.com/ghacksuserjs/ghacks-user.js/wiki/2.3-Concurrent-Profiles

  11. Thorin-II commented on Aug 5, 2018

    @Thorin-II

    ^^ Sorry for going off topic, but you can run two or more FFs - each has it's OWN profile (that's the point). No one ever said to use the same profile simultaneously, although I can see that installed versions would auto-pickup on existing profiles.

    on a single profile like you can do on Chromium

    I'm not a chrome user, so I have no idea what you did in chrome. Sometimes I assume people already know things. I do not use installed FF either, so not sure on running two or more different installed FFs versions, but definitely with portable (or only one installed) you can.

    But you are right - you can't use the same profile concurrently. I never said you could. Read the wiki. I said you can run concurrent profiles (and thus this allows you to ALSO run concurrent FF versions).

    Quote: me

    "FYI you can run concurrent firefox profiles, and even different Ff releases"

    I said profiles, plural, with an s. This allows you to run multiple firefox.exe's. End of story. If you want to badger on about it, I am not interested. Why do you keep harping on about chromium? Don't answer.

  12. added a commit that references this issue on Aug 31, 2018
  13. gorhill commented on Aug 31, 2018

    @gorhill
    Member

    The new advanced setting has been added: requestJournalProcessPeriod, default to 1000 (milliseconds). This will be in next dev build.

  14. added
    fixedissue has been addressed
    enhancementNew feature or request
    and removed on Sep 1, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestfixedissue has been addressed

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions