Skip to content
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

[Bug] TST stuck loading indefinitely #3516

Closed
manyfew opened this issue Apr 1, 2024 · 28 comments
Closed

[Bug] TST stuck loading indefinitely #3516

manyfew opened this issue Apr 1, 2024 · 28 comments

Comments

@manyfew
Copy link

manyfew commented Apr 1, 2024

Abstract

When I launch Firefox, Tree Style Tabs never finishes loading and tabs never disply. The loading progress bar appears to be stuck at one position even after waiting several minutes.

Steps to reproduce

  1. Start Firefox, install TST
  2. Open hundreds of tabs (may not be necessary but I have hundreds of tabs open)
  3. Close Firefox
  4. Re-open Firefox and wait for TST to load.

Expected result

Tabs load as usual.

Actual result

Progress bar stuck at about 30%, progress isn't made.

Environment

  • Platform (OS): Windows 11
  • Version of Firefox: 124.0.1
  • Version (or revision) of Tree Style Tab: Tested on TST 4.0.10, 4.0.8, 4.0.3 (presumably any 4.xx version has this issue)

Remarks

I notice the current latest version on Github is 4.0.8, however, I had 4.0.10 installed which is the version which is the one available at https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/

I was able to load my tabs by downgrading TST to the latest 3.xx version (3.9.22). If I upgrade again to any 4.xx release the problem comes back.

Thank you!

@piroor
Copy link
Owner

piroor commented Apr 1, 2024

Here is similar issue #3496: it was triggered by Firefox Multi-Account Containers or Session Manager. Do you use them or any other addons? If you use one or more addons, could you narrow down the list of enabled addons, to minimize the list of addons required to reproduce the problem?

@zoll
Copy link

zoll commented Apr 3, 2024

I got same issue, in the console can see managed storage is not provided

Firefox version: 124.0.2 64 bit
Plugin version: 4.0.10

maybe this can help:
obraz

@czert
Copy link

czert commented Apr 3, 2024

I'm having the same issue on developer edition 125.0b7. Except that after some time, the panel seems to finish loading and flashes what seems to be the rendered tab tree for a frame or two. Too quick to be sure, though. Then it starts loading again.

If there's more info I can provide, let me know.

@piroor
Copy link
Owner

piroor commented Apr 3, 2024

Anyway please confirm that the problem appears only with TST, by disabling other addons and resetting all TST options. (Before resetting I recommend you to export current settings: TST options => Development => All Configs => Export.) If the problem goes away with initial settings and without other addons, it may be a conflict with something addon or triggered by some options you modified.

@sizvix
Copy link

sizvix commented Apr 4, 2024

configs-treestyletab@piro.sakura.ne.jp.json
On 126.0a1 (2024-04-03) (64 bits)
and yes, I use Firefox built-in Multi-Account Container . :)

@piroor
Copy link
Owner

piroor commented Apr 4, 2024

@sizvix Could you paste configs of Multi-Account Containers too?
I've prepare TST and MAC, imported your configs to Firefox, and set Firefox to restore previous session automatically. Sadly I couldn't reproduce the problem, with 10 tabs containing three container tabs, MAC configured to open some websites in non-default container tabs.

@czert
Copy link

czert commented Apr 4, 2024

I tried installing in an empty profile a it worked. I then tried reinstalling TST in my profile and the issue went away. Which is good news for me and possibly a way for others to fix their problems, but now I can't reproduce the issue anymore to help find out what brought it on.

@piroor
Copy link
Owner

piroor commented Apr 4, 2024

The case #3496 was triggered from the order of initialization processes of addons. It looks the reason why reinstalling TST solved @czert's case.

TST provides ability to output logs around its initialization. Debug logs on stuck cases may help debugging. Here are steps to collect information:

  1. Reproduce the problem.
  2. Open debugger for TST. (instructions: https://github.com/piroor/treestyletab/wiki/How-to-inspect-tree-of-tabs#how-to-start-debugger-for-tree-style-tab )
  3. Collect logs currently reported in the "Console" tab.
  4. Switch the target document to the background page. (instructions: https://github.com/piroor/treestyletab/wiki/How-to-inspect-tree-of-tabs#how-to-inspect-the-background-page-master-process )
  5. Copy and paste a script: gMetricsData.toString()
  6. Run it by hitting the Enter key.
  7. Collect reported message.
  8. Switch the target document to the sidebar page. (instructions: https://github.com/piroor/treestyletab/wiki/How-to-inspect-tree-of-tabs#how-to-inspect-the-sidebar )
  9. Copy and paste a script: gMetricsData.toString()
  10. Run it by hitting the Enter key.
  11. Collect reported message.

@piroor
Copy link
Owner

piroor commented Apr 4, 2024

On success case, reported logs should be like following:

"total 2383 msec
248: index: Loaded
53: init: start
993: (async) waitUntilCompletelyRestored: opening tabs 
1009: (async) waitUntilCompletelyRestored: existing tabs 
1052: (async) init: waiting for waitUntilCompletelyRestored, ContextualIdentities.init and configs.$loaded
1054: init: prepare
1: init: Migration.migrateConfigs
69: (async) init: getting all tabs across windows
155: restoreWindowFromEffectiveWindowCache: start
3: restoreWindowFromEffectiveWindowCache: start
285: (async) restoreWindowFromEffectiveWindowCache: window cache
303: restoreWindowFromEffectiveWindowCache: validity check: start
0: restoreWindowFromEffectiveWindowCache: validity check: signature passed.
0: restoreWindowFromEffectiveWindowCache: validity check: matching actual signature of got cache
2: restoreWindowFromEffectiveWindowCache: validity check: actual signature passed.
213: (async) restoreWindowFromEffectiveWindowCache: permanentStatus
213: restoreTabsFromCacheInternal: start
0: fixupTabsRestoredFromCache: start
1: fixupTabsRestoredFromCache: step 1 done.
183: fixupTabsRestoredFromCache: step 2 done.
5: (async) rebuildAll: fixupTabsRestoredFromCache
10: (async) restoreWindowFromEffectiveWindowCache: restoreTabsFromCache
10: restoreWindowFromEffectiveWindowCache: window 1 succeeded
714: (async) rebuildAll: restore tabs in window 1 from cache
800: (async) rebuildAll: tabs in window 1
715: (async) restoreWindowFromEffectiveWindowCache: window cache
3: restoreWindowFromEffectiveWindowCache: validity check: start
0: restoreWindowFromEffectiveWindowCache: validity check: signature passed.
0: restoreWindowFromEffectiveWindowCache: validity check: matching actual signature of got cache
0: restoreWindowFromEffectiveWindowCache: validity check: actual signature passed.
88: (async) restoreWindowFromEffectiveWindowCache: permanentStatus
88: restoreTabsFromCacheInternal: start
0: fixupTabsRestoredFromCache: start
0: fixupTabsRestoredFromCache: step 1 done.
1: fixupTabsRestoredFromCache: step 2 done.
0: (async) rebuildAll: fixupTabsRestoredFromCache
0: (async) restoreWindowFromEffectiveWindowCache: restoreTabsFromCache
0: restoreWindowFromEffectiveWindowCache: window 28 succeeded
805: (async) rebuildAll: restore tabs in window 28 from cache
806: (async) rebuildAll: tabs in window 28
805: (async) init: rebuildAll
1: loadTreeStructure: start
0: (async) loadTreeStructure: restoration for windows
0: (async) init: TreeStructure.loadTreeStructure
1: init: started listening
63: init: started initializing of context menu
106: (async) init: exporting tabs to sidebars
212: (async) init: initializing API for other addons"
"total 1199 msec
16: Loaded
147: init: start
56: (async) getting window
18: (async) tracking all native tabs
77: (async) getting native tabs
84: browser.tabs.query finish, configs are loaded.
1: (async) promisedAllTabsTracked
279: (async) importTabsFromBackground: kCOMMAND_PING_TO_BACKGROUND
278: (async) importTabsFromBackground()
282: rebuildAll: start
26: (async) parallel initialization: Size
4: (async) parallel initialization: TabContextMenu
4: (async) parallel initialization: contextual identities
460: (async) API for other addons
476: rebuildAll: end (from scratch)
388: (async) parallel initialization: main: rebuildAll
2: mouse-event-listener: Sidebar.onBuilt: apply configs
519: (async) parallel initialization: main
127: (async) parallel initialization: post process: main
21: (async) parallel initialization: post process: Scroll.init
21: (async) parallel initialization: post process
192: init: end" 

@sizvix
Copy link

sizvix commented Apr 4, 2024

reinstalling TST solved @czert's case.

Ok , it works with uninstall TST and then reinstall

@manyfew
Copy link
Author

manyfew commented Apr 5, 2024

Anyway please confirm that the problem appears only with TST, by disabling other addons and resetting all TST options. (Before resetting I recommend you to export current settings: TST options => Development => All Configs => Export.) If the problem goes away with initial settings and without other addons, it may be a conflict with something addon or triggered by some options you modified.

Hi sorry for the late reply. I tried disabling all add-ons except TST and the problem still happened. I'm currently running the latest 3.9.22 version of TST as the problem doesn't see to happen there.

@manyfew
Copy link
Author

manyfew commented Apr 5, 2024

I tried installing in an empty profile a it worked. I then tried reinstalling TST in my profile and the issue went away. Which is good news for me and possibly a way for others to fix their problems, but now I can't reproduce the issue anymore to help find out what brought it on.

Sorry for the noob question but if I do that will I lose my current tab tree structure?

@czert
Copy link

czert commented Apr 6, 2024

@manyfew no, you won't.

@piroor
Copy link
Owner

piroor commented Apr 8, 2024

Hi sorry for the late reply. I tried disabling all add-ons except TST and the problem still happened. I'm currently running the latest 3.9.22 version of TST as the problem doesn't see to happen there.

Thanks. On your case something unexpected trouble looks happened. Could you collect detailed logs on the initialization process?
#3516 (comment)

@RoiArthurB
Copy link

Uninstalling and reinstalling this add-on did fix this issue for me too.

TST : 4.0.14
Firefox : 125.0.1

@manyfew
Copy link
Author

manyfew commented Apr 20, 2024

Uninstalling and reinstalling this add-on did fix this issue for me too.

TST : 4.0.14 Firefox : 125.0.1

This should be the next thing I will try. Right now I have too much stuff in my hands and I can't afford downtime so I'll stick with v3.x for a few more days. I have set a reminder in my calendar to attempt the uninstall-reinstall procedure in a few days when I have more free time in case something breaks.

@spjakob
Copy link

spjakob commented Apr 24, 2024

I can confirm that I have (had) the exact same issue. Reinstalling TST did NOT help, but after I disabled tab session manager addon, TST finally finished loading again.

@piroor
Copy link
Owner

piroor commented Apr 24, 2024

@spjakob Could you share options of TST and tab session manager, to reproduce the problem on my environment?

@manyfew
Copy link
Author

manyfew commented Apr 27, 2024

In the end I backed up my Firefox directory and proceeded to delete a bunch of junk folders in it. After that, the latest version of TST loads fine, although I will mention that, while searching for a solution a fellow redditor brought to my attention a similar add-on called Sidebery which I decided to check out and damn that thing is good. I fell in love with it almost immediately, so much so that I have stopped using TST and now I'm using Sidebery. I appreciate the hard work behind TST and I encourage the developer to take a look at Sidebery for ideas because it is very good.

@silverwings15
Copy link

silverwings15 commented Apr 27, 2024

@manyfew as a long term user of TST and recent user of Sidebery, I feel exactly the same! similar to you, i share deep appreciation and gratitude for piroor and others' efforts, and i'll always be fond of TST, the undisputed best vertical tab extension since i started using it circa 2012 or 2013. but the latest Sidebery v5 is so good (managing to be fast, responsive and yet extremely feature packed), that it has actually displaced TST for me. very impressive, considering i tried v4 some years ago and decided it couldn't hold a candle to TST back then.

@piroor
Copy link
Owner

piroor commented Apr 27, 2024

Better performance is always important, but "delay" and/or "fragility" are sadly unavoidable for some features. For example, TST has an option specifying behavior for newly opened / restored / duplicated tabs, but we need to wait for the next tick (it introduces a delay) to know a tab's context: newly opened, duplicated or restored. This delay introduces conflict with some other addons also, because other addons can handle new tabs and do something while TST is waiting for the next tick.

Recently I kicked around solving this kind delay, but I couldn't find out better solution to keep both stability and speed. If I prefer the speed, you'll see odd behavior around such kind tabs: they will be treated as a tab opened from regular link in a tab at first, and immediately moved and reattached to another tab as its actual context detected with a delay. Reducing this kind "odd" behaviors is the reason why current TST chose "stable but slow" way. Most of other known "delay" and/or "fragility" of TST are also from similar reasons. Super developer possibly can find out more better way, but sadly, at least I couldn't do that.

I agree Sidebery is good alternative, if you don't need TST specific features like this and Sidebery fully covers your use case.

@piroor
Copy link
Owner

piroor commented Apr 30, 2024

Anyway here is an issue tracker of the TST project aiming to fix bugs of TST. I really need information to investigate the situation happening the problem: logs, detailed steps/conditions to reproduce the problem, and so on.

@whoney2
Copy link

whoney2 commented May 3, 2024

I have found that this problem occurs when I open any session with the checkbox "Support tree-type tabs" in the Tab Session Manager. This bug happens sometimes, not every time. If I uncheck the box, the bug does not occur. The bug probably occurs in version 4.00 or later, but it works fine in 3.9.22.

@piroor
Copy link
Owner

piroor commented May 5, 2024

To Tab Session Manager users including @whoney2: could you upload exported settings of TSM and TST? I'm trying to reproduce the problem with a combination of TST and TSM with clean profile but I couldn't, so it may depends on some options. Providing exported session file to reproduce the problem will help me more.

@whoney2
Copy link

whoney2 commented May 6, 2024

I will upload the TSM and TST configuration files and the sessions that are prone to bugs in my environment.
I exported TST after setting it to the buggy state 4.0.13.
The symptom-prone session has several child tabs and seems to have about 6 tabs or more.Even so, sometimes bugs appear and sometimes they do not.
Sessions with no hierarchy (no child tabs) do not seem to have the bug.
Firefox version is 115.10ESR.

ご連絡ありがとうございます。
TSMとTSTの設定ファイルと、私の環境でバグの出やすいセッションをアップロードします。
TSTはバグのでる状態の4.0.13にしてからエクスポートしました。
症状の出やすいセッションはいくつかの子タブがあり、6タブ程度以上あるようです。それでもバグはでるときとでないときがあります。
階層のない(子タブのない)セッションはバグはでないようです。
Firefoxのバージョンは115.10ESRです。
TabSessionManager_Settings.zip

@whoney2
Copy link

whoney2 commented May 6, 2024

I also tried importing the uploaded configuration file with a clean profile.
It is reproducible. I would be happy to find if it is an options issue.

piroor added a commit that referenced this issue May 6, 2024
@piroor
Copy link
Owner

piroor commented May 6, 2024

Thanks @whoney2 ! I've successfully reproduced the problem, and realized that the initialization failure was triggered by tabs opened while initialization of the sidebar panel. The commit c546e73 should fix it.

piroor added a commit that referenced this issue May 6, 2024
…pened while the initialization process was srarted #3516"

This reverts commit c546e73.
Copy link

This issue has been closed due to no response within 14 days after labeled as "maybe fixed", 7 days after last reopened, and 7 days after last commented.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

9 participants