sidebery
sidebery copied to clipboard
Tree scrambled after firefox crash
Steps to reproduce
- Open Firefox in a new profile
- Install Sidebery
- Open multiple pages, organize a complex tree structure in Sidebery
- Let Firefox crash 🥲
- Reopen Firefox
- Observe that the tree structure is mixed up and completely different from what it was before the crash
I face this behavior because Firefox crash often on my system. I perfectly know I should fix this, but those crash gave me the chance to observe the behavior of Sidebery, and there is room for improvement here.
Actual behavior
Lost of the tree structure in Sidebery after the web browser crashed
Expected behavior
Sidebery should periodically save its structure on disk, so if ever a crash append it will be able to reload the correct structure
System
Ubuntu 24.04
Firefox version
129.0
Sidebery version
5.2.0
Logs
Cannot get the log after a crash
Update: even when closing Firefox normally (no crash), the tabs are scrambled when reopening Firefox:
- the tab tree gets all flatten, all tabs are loosing the parent-child relationships
- tabs panels are lost, all tabs are moved to the first tab panel and all the other are empty This simply renders sideberry useless @mbnuqw would you have bandwidth to take a look? Is there additional info you'd need to get a better grasp at the issue?
I am starting to see this too since today.
also see https://github.com/mbnuqw/sidebery/issues/1368
@randoum, could you test the latest nightly release (v5.3.1.3)? And if you can, please provide the logs right after sidebery is open (even if everything is ok)
How to get logs
-
Open DevTools (open this url in new tab:
about:devtools-toolbox?id=%7B3c078156-979c-498b-8990-85f7987dd929%7D&type=extension). -
Navigate to
consoletab. -
Copy and paste them here.
@mbnuqw Thanks for your reply. I am still having the issue with v5.3.3
[bg] Init start [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.setupConnectionListener() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] Settings.loadSettings() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] Init end: 73ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 1): [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 1): New connection [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnected sidebar 1 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] Windows.isWindowTabsLocked 1 undefined 0 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 1): Disconnected! {"srcType":2,"dstType":0,"srcWinId":1} undefined [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.resolveUnfinishedCommunications() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onDisconnected sidebar 1 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar] Init start [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar] Settings.loadSettings() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] IPC.setupConnectionListener() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Sidebar.loadPanels [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Sidebar.loadPanels: Done: 129ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Tabs.load [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Tabs.restoreTabsState [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] IPC.request bg: isWindowTabsLocked: Connection is not ready: Pending request [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 34): [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 34): New connection [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnected sidebar 34 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] Windows.isWindowTabsLocked 34 undefined 0 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Tabs.findCachedData: mismatched: 6 93 93 [chunk-WJ3J5FZU.js:2:11481](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Tabs.findCachedData: mismatched: 93 93 38 [chunk-WJ3J5FZU.js:2:11481](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Tabs.findCachedData: mismatched: 93 93 3 [chunk-WJ3J5FZU.js:2:11481](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Tabs.restoreTabsFromSessionData [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Tabs.restoreTabsState: Done: 46ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Tabs.load: Done: 89ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:34] Init end: 337ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar] Init start [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar] Settings.loadSettings() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] IPC.setupConnectionListener() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Sidebar.loadPanels [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Sidebar.loadPanels: Done: 5ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Tabs.load [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Tabs.restoreTabsState [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] IPC.request bg: isWindowTabsLocked: Connection is not ready: Pending request [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 45): [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 45): New connection [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnected sidebar 45 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 47): [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 47): New connection [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnected sidebar 47 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] Windows.isWindowTabsLocked 45 undefined 0 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] Windows.isWindowTabsLocked 47 undefined 0 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Tabs.findCachedData: mismatched: 38 38 93 [chunk-WJ3J5FZU.js:2:11481](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Tabs.restoreTabsFromCache [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Tabs.restoreTabsState: Done: 28ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Tabs.load: Done: 50ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] Init end: 86ms [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] IPC.connectTo(bg): Disconnected! {"srcType":2,"dstType":0,"srcWinId":45} undefined [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[sidebar:45] IPC.connectTo(bg): Reconnecting... 1000 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 47): Disconnected! {"srcType":2,"dstType":0,"srcWinId":47} undefined [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.resolveUnfinishedCommunications() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onDisconnected sidebar 47 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 45): Disconnected! {"srcType":2,"dstType":0,"srcWinId":45} undefined [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.resolveUnfinishedCommunications() [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onDisconnected sidebar 45 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 45): [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnect(sidebar, 45): New connection [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
[bg] IPC.onConnected sidebar 45 [chunk-WJ3J5FZU.js:2:11395](moz-extension://8ff0e850-e88f-4848-a6cf-cdbb82c9984b/chunk-WJ3J5FZU.js)
3 of those lines are yellow:
- [sidebar:45] Tabs.findCachedData: mismatched: 38 38 93
- [sidebar:160] Tabs.findCachedData: mismatched: 1 1 96
- [sidebar:160] Tabs.findCachedData: mismatched: 1 1 38
@mbnuqw I did some tests and I think I found an additional element. Perhaps you'll be able to reproduce now.
In my tree structure I use empty tabs (a new tab without opening any address) as the root of a tree, and I rename it so it helps me to quickly detect groups of tabs. For example I have an empty tab renamed "AI" with a few tabs of different chat AIs inside.
I did a test without those empty tabs, and the bug did not appear (the tree structure was maintained after reopening FF). Perhaps this is why I'm still having the bug. By using empty tabs the same way you may be able to reproduce now.
While I cannot reproduce this behavior with the crash (using SIGSEGV signal), I can reproduce the issue on restoring session when that root New Tab is active - all its direct descendants go lvl down (outdent). It seems, this is similar to your case?
@mbnuqw Yes that's exactly the case (sorry for delayed answer)