Vault does not automatically sync on Ubuntu anymore - "Cannot read properties of null (reading 'put')"

Steps to reproduce

  1. I click on the Obsidian icon, the software launches, but Sync state is “Uninitialized”;
  2. I click on Sync, the vault is “Currently not connected to a remote vault”;
  3. I click on “choose” to select a vault, it offers me “Balthazar” (the name of the vault);
  4. I click on “connect”, and I am asked to enter my password;
  5. I enter my password;

Expected result

  • message: “Your password has been successfully verified”
  • window closes

Actual result

  1. Strange messages:"
  • “Your password has been successfully verified”
  • Cannot read properties of null (reading ‘put’)
  • The window does not close, I have to do it manually
  1. I close the window, it takes me back to the step of choosing a vault (step 3)
  2. I also close this window, this takes me back to step 2, but this time the vault is connected.
  3. After a few seconds, the Sync icon appears as “Fully synced”.

Environment

  • Operating system:
    Ubuntu 22.04 LTS
  • Debug info:

Additional information

1 Like

I don’t think this is related to your bug report. I’m just letting you know: I recently made a request for the help docs to be changed on this. You are not supposed to enter “your password”, you are supposed to “choose a password”. The password has nothing to do with your Obsidian account. Each synced vault can have a unique password.

Again, this is likely unrelated to your bug report. I’m just letting you know.


You didn’t post your Debug info. So just checking: Have you reinstalled your Obsidian installer? If you are on a very old installer, maybe that has something to do with it too. The latest version had a big Electron upgrade. WhiteNoise would know better than me, but you can try to download and reinstall Obsidian from 1.1.19 installer if you haven’t.

How much disk space do you have on your main drive?

Do you see any additional errors when opening the developer console?

Open the developer tools by pressing Ctrl-Shift-I on Windows/Linux or Cmd-Opt-I on macOS, and then go to the “Console” tab.
If you want to save the error to a log file, you can right click on the error and choose “Save as…”.

Thank you for your reply.

Yes, I downloaded and reinstall Obsidian from the mainsite, AppImage v 1.1.9 (installer version 1.1.9).

Here the debug infos:

1. When I open Obsidian

app.js:1 Obsidian Developer Console
app.js:1 Uncaught (in promise) DOMException: Internal error opening backing store for indexedDB.open.
app.js:1 Failed to load cache DOMException: Internal error opening backing store for indexedDB.open.
(anonymous) @ app.js:1
app.js:1 Failed to load sync data DOMException: Internal error opening backing store for indexedDB.open.
(anonymous) @ app.js:1

2. When I manually connect to Sync

app.js:1 Obsidian Developer Console
app.js:1 Uncaught (in promise) DOMException: Internal error opening backing store for indexedDB.open.
app.js:1 Failed to load cache DOMException: Internal error opening backing store for indexedDB.open.
(anonymous) @ app.js:1
app.js:1 Failed to load sync data DOMException: Internal error opening backing store for indexedDB.open.
(anonymous) @ app.js:1
app.js:1 TypeError: Cannot read properties of null (reading ‘put’)
at t. (app.js:1:1583444)
at app.js:1:235505
at Object.next (app.js:1:235610)
at app.js:1:234547
at new Promise ()
at g (app.js:1:234292)
at t.saveData (app.js:1:1582860)
at t. (app.js:1:1583878)
at app.js:1:235505
at Object.next (app.js:1:235610)
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
s @ app.js:1
Promise.then (async)
l @ app.js:1
a @ app.js:1
Promise.then (async)
l @ app.js:1
(anonymous) @ app.js:1
g @ app.js:1
s @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
g @ app.js:1
(anonymous) @ app.js:1
app.js:1 Uncaught (in promise) TypeError: Cannot read properties of null (reading ‘put’)
at t. (app.js:1:1583444)
at app.js:1:235505
at Object.next (app.js:1:235610)
at app.js:1:234547
at new Promise ()
at g (app.js:1:234292)
at t.saveData (app.js:1:1582860)
at s (app.js:1:702707)
at l (app.js:1:702813)
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
g @ app.js:1
t.saveData @ app.js:1
s @ app.js:1
l @ app.js:1
setTimeout (async)
c @ app.js:1
(anonymous) @ app.js:1
e.onMessage @ app.js:1

Thank you for your reply,

About 255 Go remaining on main main drive.

Thank you for explanation on where to find the error log and how to show it. I just posted it in response to rigmarole.

I sent an email to support and they helped my solve the issue.

If anyone is in the same situation as me, here is the guide they advised me to follow:

This seems to be a rare error that we haven’t yet nailed down a pattern for.

It seems like something went wrong with your data storage for sync cache.

First, make sure you have enough free space on your disk drive.

If you do have enough space, restart the app and try to Sync again.

If restarting the app does not work, you may have to wipe the indexedDB folder in Obsidian’s appdata folder:

  • Uninstall Obsidian from your device. (This will not affect your vault’s settings or files.)
  • Head over to this folder and delete everything inside (while Obsidian is closed) and restart the app. (Again, this will not affect your vault’s settings or files, nor will it affect your remote vault.)
    • Windows: %appdata%\obsidian\IndexedDB
    • Mac: ~/Library/Application Support/obsidian/IndexedDB/
    • Linux: ~/.config/obsidian/IndexedDB
      Reinstall Obsidian.
      Relaunch the vault and try again.

This should reset the sync data for all your local vaults and fix up the indexedDB.

3 Likes

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.