Category:

Diagnostics

March 11, 2025 in Uncategorized

There’s a known browser issue that may lead to corruption of data stored locally by Chrome extensions.

Check for Disk Cleaners

Check whether your device has disk cleaners installed or enabled through your OS. Common tools include Disk Cleanup, CCleaner, and BleachBit. If you use one, review its settings to ensure extension data folders are excluded from cleanup.

Session Buddy’s extension data is stored in the following locations:

<profile path>\IndexedDB\chrome-extension_edacconmaakjimmfgnblocblbcdcpbko_0.indexeddb.blob
<profile path>\IndexedDB\chrome-extension_edacconmaakjimmfgnblocblbcdcpbko_0.indexeddb.leveldb

You can find your profile path by visiting chrome://version/ in your browser.

If your disk cleaner does not allow exclusions for individual folders, look for broader categories such as “Browser data” or “IndexedDB” that can be opted out of.

Backup

Through Session Buddy

Session Buddy allows you to manually back up your data from its gear menu. Regular backups are recommended. Having a backup file makes recovery simple using Session Buddy’s Restore feature, also accessible from the gear menu.

System backups

Due to browser security limitations, Session Buddy cannot automate backups. If you prefer an automated solution, ensure you have a system backup in place that includes Session Buddy’s extension data folders. Options include Windows Backup, Windows File History, Time Machine for macOS, or third-party solutions like Acronis.

Looking forward

We’re actively working on a cloud backup feature that will provide an easy alternative to manual backups and system-based solutions for protecting your Session Buddy data.

Missing data

March 10, 2025 in Uncategorized

There’s a known browser issue that can in some rare cases lead to corruption of data stored locally by browser extensions.

This issue arises because the files used to store extension data can be deleted by any app running on your device. Browsers do not prevent this or provide redundancy for recovery.

The most common culprits are disk cleaner tools, which often target these files for removal.

Session Buddy actively monitors your data and alerts you when anomalies are detected. When notified, you have the option to repair the data to restore normal access to your collections and history.

Although this type of data corruption is relatively rare, there are simple steps you can take to eliminate the risk altogether.

Check for Disk Cleaners

Check whether your device has disk cleaners installed or enabled through your OS. Common tools include Disk Cleanup, CCleaner, and BleachBit. If you use one, review its settings to ensure extension data folders are excluded from cleanup.

Session Buddy’s extension data is stored in the following locations:

<profile path>\IndexedDB\chrome-extension_edacconmaakjimmfgnblocblbcdcpbko_0.indexeddb.blob
<profile path>\IndexedDB\chrome-extension_edacconmaakjimmfgnblocblbcdcpbko_0.indexeddb.leveldb

You can find your profile path by visiting chrome://version/ in your browser.

If your disk cleaner does not allow exclusions for individual folders, look for broader categories such as “Browser data” or “IndexedDB” that can be opted out of.

Backup

Through Session Buddy

Session Buddy allows you to manually back up your data from its gear menu. Regular backups are recommended. Having a backup file makes recovery simple using Session Buddy’s Restore feature, also accessible from the gear menu.

System backups

Due to browser security limitations, Session Buddy cannot automate backups. If you prefer an automated solution, ensure you have a system backup in place that includes Session Buddy’s extension data folders. Options include Windows Backup, Windows File History, Time Machine for macOS, or third-party solutions like Acronis.

Looking forward

We’re actively working on a cloud backup feature that will provide an easy alternative to manual backups and system-based solutions for protecting your Session Buddy data.

Formats

March 9, 2025 in Uncategorized

Session Buddy supports the representation of links and tabs in a variety of text formats that can be used to import collections, add links to collections, or open many tabs at once.

A format can also be selected when exporting collections.

Importing, adding links, and opening tabs

You can import, add links to collections, or open tabs in any of the formats listed below.

The format is automatically detected when text is pasted or a file is dropped, but it can also be explicitly selected with the Format dropdown.

Free-form

When Free-form is selected, Session Buddy attempts to extract URLs from arbitrary text using pattern matching.

Free-form is technically not a format, as it represents text lacking any formatting rules.

When format detection is turned on but no known format is matched, format selection defaults to Free-form.

URLs

A flat list of URLs.

Every non-blank line must be a URL.

Blank lines are ignored.

Title/URL pairs

A flat list of URLs with titles.

Each title/URL pair must have a non-blank title followed by a valid URL on the next line.

Each pair must be separated by at least one blank line.

Groups of URLs

A flat list of URLs.

A non-blank line must be a URL.

Every continuous list of URLs defines a group; blank lines create new groups (either folders or windows).

Named groups of URLs

Similar to Groups of URLs, but every continuous list of URLs must be preceded by a group name.

A group name must be separated from the previous group by a blank line and followed by a blank line.

Named groups of title/URL pairs

Like Named groups of URLs, but each group is a list of blank-line-separated title/URL pairs.

Indented groups of URLs

Capable of representing collection/folder/link hierarchies. Folder names must have consistent indentation. Links must be consistently double-indented.

Indented groups of title/URL pairs

Like Indented groups of URLs, but for title/URL pairs.

JSON

Fully-structured collections.

CSV

A tabular representation of URLs with optional collection and/or folder grouping.

Recognizes the following columns. Every column is optional except URL.

  • Collection (the collection’s name)
  • Folder (the folder’s name)
  • URL (required)
  • Title
  • FavIconURL
  • Pinned (“true” or “false”)
  • Active (“true” or “false”)
  • GroupId (must be a number)

Export

You can currently export collections in the following formats:

URLs

Flat list of URLs.

Title/URL pairs

Flat list or titles and URLs, separated by a blank line.

Indented groups of URLs

Hierarchical representation of URLs, with collection names at the top level, folder names once-indented, and URLs twice-indented.

Indented groups of title/URL pairs

Same as Indented groups of URLs, except that links have both titles and URLs.

JSON

Fully-structured collections.

CSV

A tabular representation of tabs or links with collection and folder groupings.

Understanding and Preventing Session Buddy Data Loss: An In-Depth Analysis

June 23, 2024 in Uncategorized

We have received some reports about spontaneous loss of collection and history data in Session Buddy. This post outlines what we know about this issue, what you can do to protect yourself, and our plans to address the problem.

Overview

At a high level, the problem stems from the fact that local data is inherently vulnerable. This problem is not unique to Session Buddy v4. Session Buddy v3, although it used a different local storage technology, suffered from this as well. In fact all extensions that store data locally are similarly vulnerable.

While reports involving permanent data loss are statistically rare, it is critical for us to prioritize the pursuit of remedies as any risk to data is unacceptable.

Symptoms

Data loss in Session Buddy may follow or be accompanied by:

  • A browser prompt to “repair” the extension due to corruption. Proceeding with the repair then clears the data Session Buddy stores locally.
  • A blank screen when opening Session Buddy
  • An empty collection or history list
  • IndexedDB errors in the console during startup or operation

Data loss may be limited to either collections or history or in some cases affect all extension data, including settings.

We have not heard of or expect data loss scenarios resulting in the dropping of individual collections or history events.

Causes

The fundamental problem is that Session Buddy data is stored locally and the underlying storage mechanisms are controlled by the browser.

While storing data this way has benefits (privacy, cost, performance, simplicity), it is not as reliable as it should be.

Some factors that jeopardize local data are expected and well-understood, while some are not.

Expected causes

  • Low Disk Space: Browsers may delete local extension data under disk space pressure.
  • System Maintenance: Data can be deleted by system maintenance processes, file restores, or disk cleanup tools.
  • User Actions: Some users have a mistaken (yet reasonable) expectation of data persistence that lead them to uninstall an extension, clear browser data, or run cleaner tools without first backing up extension data.

Unfortunately there is not much an extension can do to prevent deletion in these cases. It can only try to account for it after the fact.

Unexpected Causes

User reports and testimony from other extension developers seem to indicate the presence of data corruption bugs in browsers, browser implementations of IndexedDB, and/or third-party IndexedDB libraries.

Unfortunately there is very little information about these kinds of bugs as they tend to be multivariate and difficult to reproduce.

Some evidence suggests that occurrences of data corruption may be correlated with browser updates, extension updates, power outages, or system crashes but there is no hard data known to us definitively implicating any of these as contributing factors.

Another possible contributing factor may be having Session Buddy open in multiple tabs.

Diagnosis

If you encounter a problem while using Session Buddy (eg, blank screen, empty collection list), do the following:

1. Save Data: Open the Session Buddy console and execute the following command: saveData()

This creates a download file of all collections and history.

Open this file in a text editor and check that collection and history data is present. If “collections” or “events” is null, it means there’s a problem accessing the corresponding data store.

2. Save Diagnostics: In the console, execute the following command: saveDiagnostics()

This creates a download file with information that can be used for troubleshooting.

Send this file to support@sessionbuddy.com along with a description of what happened and any errors presented in the console.

3. Restart the Browser: In some cases the browser may recover from data access issues. Restart the browser to see if that resolves the problem. If not, try restarting your device.

Solutions

Workarounds for Data Corruption Bugs

There may be precautions that Session Buddy can take to avoid triggering data corruption bugs.

This kind of solution requires more information to identify contributing patterns. We will continue to research and monitor development resources and Chromium issues and investigate measures as new information comes to light. We will also continue to expand our test suite in pursuit of conditions that reliably produce data failures.

Finally, we’ll continue to analyze diagnostics as they’re shared by impacted users. This kind of data can be extremely useful for identifying failure patterns but it will take some time to accrue a suitable sample size since incidence rates are low and few reporters include this detail.

User Backups

Users can protect themselves by including Session Buddy data folders in scheduled system backups and/or regularly manually backing up Session Buddy data as explained here.

This is, however, not an ideal or convenient solution for most folks.

Education

We’ve posted about data risks and safeguards in the Session Buddy user forum, but we may need to take more proactive measures to educate users about this topic, possibly via app notifications.

We have plans to add a notification for when data usage is approaching quota to alert users of increased risk of data eviction so they can take appropriate steps like exporting a backup or deleting old collections and history.

Local Redundancy

A local data redundancy strategy may help compensate for some data corruption scenarios.

Implementation options are limited to either more IndexedDB database instances or use of the origin private file system (depending on browser support).

This would be a partial solution since redundant data would still be subject to browser control (and therefore things like quota restrictions, users and tools clearing site data, and browser bugs).

Such a solution also adds complexity and has the potential to exacerbate the problem by contributing to local storage usage leading to eviction.

We are exploring the viability of a local redundancy solution that can be implemented in the immediate term.

Cloud Storage

Cloud storage (either complementing or in lieu of local storage) is the ultimate solution to eliminating the risks related to storing data locally.

We are currently developing a cloud offering that, in addition to data reliability, introduces benefits such as data synch across browser profiles and access to collections from mobile devices and public browsers.

Since cloud resources incur costs, this will be a subscription-based feature.

An initial low-cost version of this is being considered to provide data protection through simple automated cloud backup that can be easily restored if needed.

How to Locate Session Buddy v3 Data on Your Computer

June 7, 2024 in Uncategorized

Session Buddy v3 (now deprecated) stored Saved Sessions, Previous Sessions, and settings in a single file on your computer.

To locate that file, follow these steps:

1. Find the current Chrome profile folder

A Session Buddy installation is specific to a Chrome profile.

To find the folder path for the current Chrome profile, see: How to Locate the Current Chrome Profile Folder.

2. Find the Session Buddy database file

Go to the location of the Chrome profile obtained in Step 1.

From this folder, go to the subfolder named databases.

From there, go to the subfolder named chrome-extension_edacconmaakjimmfgnblocblbcdcpbko_0.

This folder contains your Session Buddy v3 database file. The file will have a numeric name like 1 or 2.

If there is more than one such file, the current file is the one with the highest number. This should also be the file with the most recent modification date and largest size.

How to Locate Session Buddy v4 Data on Your Computer

June 7, 2024 in Uncategorized

Session Buddy v4 stores collections, history, and settings in folders on your computer.

To find these folders, follow these steps:

1. Find the current Chrome profile folder

A Session Buddy installation is specific to a Chrome profile.

To find the folder path for the current Chrome profile, see: How to Locate the Current Chrome Profile Folder.

2. Find the Session Buddy database folders

Go to the location of the Chrome profile obtained in Step 1. From this folder, go to the subfolder named IndexedDB.

In the IndexedDB folder, find the subfolder with the following name:

chrome-extension_edacconmaakjimmfgnblocblbcdcpbko_0.indexeddb.leveldb

This is the main Session Buddy database folder.

There MAY also be a subfolder with the following name:

chrome-extension_edacconmaakjimmfgnblocblbcdcpbko_0.indexeddb.blob

This folder also contains Session Buddy data.

When setting up your system backup or manually backing up Session Buddy data, make sure to include the main folder as well as the second folder. Note that even if the second folder is not currently present, it may later be created by Chrome as needed.

When sending data to support for troubleshooting, include both folders with all of their contents in a zip file.

When restoring Session Buddy data from a backup of these folders, follow these steps:

  1. Shut down Chrome completely
  2. Rename the current data folders under the appropriate profile by appending “-backup”
  3. Copy in the restored versions of the folders and all of their contents
  4. Start Chrome and open Session Buddy to validate restoration

Restore Session Buddy v3 data

June 5, 2024 in Uncategorized

When Session Buddy upgrades from v3 to v4 it normally automatically transfers your data.

However, because of recent Chrome deprecations, Session Buddy will be unable to do this automatically if you’re using Chrome 124 or later (more likely now than when v4 first came out). In this case, you’ll need to transfer your data manually.

To do so, follow these steps:

1) Use the Session Buddy v4 migration tool to create a restore file from your Session Buddy v3 data

2) Drop the created restore file into Session Buddy by following the Restore steps outlined here: https://sessionbuddy.com/restore/

Troubleshooting Export

June 1, 2024 in Uncategorized

Session Buddy’s export feature normally allows you to select a folder to save the export file to.

In some cases, however, folder selection may be unsupported or blocked by a permission setting. When this happens, Session Buddy falls back to a file download option. Most of the time this allows the export to proceed without issue, saving the export file to your preferred Downloads folder.

If you prefer to select a destination for your exports or you encounter a problem with the download fallback, there are a couple of things you can try to enable folder selection. Read on…

Enable file picker support

Some browsers such as Brave do not support a file picker feature by default. In these browsers, Session Buddy’s Export dialog displays a “Download export file” button instead of a “Select destination” button.

To enable folder selection in this case, you may need to enable the File System Access API. You can do so by navigating to chrome://flags/#file-system-access-api and selecting Enabled from the dropdown of the highlighted item, then restarting the browser.

Note that while Session Buddy works fine in many browsers including Brave, it is currently only officially supported for use with Chrome. Also, as with any Chrome flag, be sure to familiarize yourself with the implications of enabling this flag.

Allow file editing permission

In some cases, file selection may be blocked by a “File editing” permission.

When this is the case, Session Buddy will display an error after an attempt to select the file destination and present you with an option to download the file instead.

To enable folder selection in this case, you’ll need to explicitly allow the “File editing” permission. To do this, open the web permissions page by right-clicking the Session Buddy icon, then selecting “View web permissions”. Alternatively, you can simply open a tab and copy-paste the following URL into the address bar:

chrome://settings/content/siteDetails?site=chrome-extension%3A%2F%2Fedacconmaakjimmfgnblocblbcdcpbko

Scroll down to the “File editing” line item and change the permission from Block to Ask in the dropdown. Be sure to reload the Session Buddy tab before attempting to export again.

Sometimes this permission is locked by an enterprise policy, preventing you from changing it. If that’s the case you’ll need to contact your Google account administrator for help.

Data Safeguards

April 22, 2024 in Uncategorized

Session Buddy currently stores collections, history, and settings on your computer.

This post explains the limitations inherent to this type of data storage and what you can do to guard against circumstances that can lead to data loss in some rare cases.

Extension local storage vulnerabilities

Although uncommon, data that a browser extension stores on your computer can in some cases get deleted or corrupted due to circumstances beyond the extension’s control.

Some of the factors known to contribute to such data loss are:

  • Low disk space
  • Folders where the data is stored being deleted or corrupted by an external process such as:
    • scheduled backup
    • anti-virus
    • OS “cleaner” (eg, CCleaner, Avast Cleanup)
    • Windows Restore
  • Browsing data or site data being cleared, either manually or automatically
  • The extension being reset, disabled, or uninstalled by the browser
  • Browser profile corruption, possibly caused by a browser update or power outage
  • A browser or OS crash
  • Bugs in the browser’s implementation of IndexedDB
  • The usual risk factors associated with storing data in a single location, such as hardware failure and device theft.

What you can do to protect your Session Buddy data

An opt-in cloud storage feature is currently in the works. This will, among other benefits, be the easiest and most reliable way to eliminate the risks related to storing data locally.

In the meantime, we recommend you follow the measures outlined below to give you the peace of mind of a data recovery option should you need it.

System backups

Include the local Session Buddy data folders in your scheduled system backups.

If you do not already have a process in place to regularly back up your files, either to an external drive or to the cloud, you absolutely should. Trust us on this one.

Manual backups

Although less convenient, we recommend setting a daily, weekly, or monthly reminder to manually create a backup by clicking on the Session Buddy gear menu, then clicking Export.

An export file can be used to restore a new installation of Session Buddy through the Restore feature.

Mac Keyboard Shortcut Bug

March 20, 2024 in Uncategorized

A recent Session Buddy update mistakenly assigned the cmd+b keyboard shortcut to opening a new Session Buddy tab.

This is almost certainly not what you want, since cmd+b is a common keyboard shortcut in lots of other applications.

To reset this keyboard shortcut:

  1. In Session Buddy, click on the gear menu in the upper right-hand corner, then click “Settings

  2. In the Settings dialog, click the “Other” tab

  3. Click the “Open extension shortcuts” button. This opens the Chrome extension keyboard shortcuts page.

  4. Scroll to the Session Buddy card and click the pencil icon next to the shortcut labeled “Activate the extension

  5. Click outside of the shortcut text box and make sure the shortcut reads “Not set