-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"PixieBrix could not run on page" error when opening sidebar #4078
Comments
I was able to reproduce this once by reinstalling PB:
Step 1 is kinda crazy because any I'll try to find out why this is happening. |
ReproducibilityThe general issue somewhat reproducible because this is simply a timeout issue due to the lengthy insertion sequence:
This has to happen within 4s from the user click, as defined by the timeout in the browser action handler. To reproduce it:
|
I might have found one of the many reasons the sidebar loads slowly: off-site fonts. Wow. Look at the timestamps of the contentscript retries and error and then compare it to the first log by the sidebar. The JS was run 9 whole seconds after the timeout. This is highly variable and depends on a third party, this is why it's hard to reproduce it. I have a couple of PRs in the pipeline to address sidebar speed. |
Yes, and will also depend on 1) if the user is new (are the fonts in cache), and 2) if Chrome decides to go grab it anyway You can likely turn on network throttling to more reliable reproduction |
@fregante I cut a build 1.7.5-beta.4 with the following:
I'm still getting the original issue when I first activate the "LinkedIn organization demo bricks" blueprint (even when waiting for the content script to load). After I reload the extension background page the problem goes away Update: not able to reproduce the problem reliably. But it's worrisome for the playground flow for new users. I guess this could be Google font related... |
In case of extreme font loading delays, the sidebar context would not receive any messages nor print any logs. It doesn't look like it's the case in the screenshot. Those warnings suggest that the sidebar context is receiving messages while the context is waiting for a __getTabData response (or rather, it failed). Do you see what happens to that __getTabData? Is it being received by the background page? I've been thinking about other ways to get the current tabId but there's nothing, they only suggest a ping to the runtime. Side note: we should probably add a "context invalidated" notification in the sidebar and options page so we catch any such issues. |
Moving to 1.7.X to keep an eye on this, as the main regression/bug has been addressed |
Bringing back to 1.7.5. Is still a significant issue. Reloading the background page solves the problem, so appears to be a problem with the background messenger getting into a bad state? |
If it happens, could you post the full logs of the sidebar and background? The only state we have I think is the "target name" and only in the requester. The background always knows its name without race conditions. I'll try to replicate this again today. I haven't seen it since.
I think "reloading the background page" means nearly reloading the whole extension since it will cause to reinject the content scripts, among others. if I remember correctly. |
Personal notes: How to reproduce itI can replicate it by reinstalling the extension, like:
but the background page is successfully responding to every message, so I need to find out why it's not being handled: The options page also receives the message but does not handle it at all for some reason, perhaps it did not register the handler on the very first load? It does on successive loads. Possible causeI probably found the issue. This PR actually made it worse because we're not registering any handlers in the options but now the options page is specifically responding with an error: It feels like the |
Steps to reproduce
Expected Result
Actual Result
Related Conversations
The text was updated successfully, but these errors were encountered: