Large vault - Obsidian not closing properly- not able to re-open (stuck in IndexedDB.open)

Platform:

  • Operating System: Fedora Linux 41 (X11)
  • Kernel: 6.12.11-200.fc41.x86_64
  • Processor: Ryzen 7 3700X
  • RAM: 32GB
  • Disk: 512GB SSD

Obsidian Version:

  • Application version: v1.8.4
  • Installer version: v1.8.4

Issue Description

Obsidian does not close gracefully when exiting via the GUI, leading to an IndexedDB lock issue. This causes startup issues due to the locked database file (LOCK in the IndexedDB directory), preventing the LevelDB database from opening correctly.

Symptoms:

  1. Obsidian Process Remains Active

    • After closing Obsidian via the GUI, multiple obsidian processes remain running:
      pgrep -fl obsidian
      12555 obsidian
      12560 obsidian
      12561 obsidian
      12563 obsidian
      
    • Some processes remain as <defunct> (zombie processes) even after trying to restart the application.
  2. IndexedDB Lock Issue

    • When restarting, the following error appears repeatedly in logs:
      [13433:0210/143601.929800:ERROR:bucket_context.cc(357)] Failed to open LevelDB database from /home/v/.config/obsidian/IndexedDB/app_obsidian.md_0.indexeddb.leveldb, IO error: /home/v/.config/obsidian/IndexedDB/app_obsidian.md_0.indexeddb.leveldb/LOCK
      
    • Manually removing the LOCK file (rm -f ~/.config/obsidian/IndexedDB/app_obsidian.md_0.indexeddb.leveldb/LOCK) allows Obsidian to start again, but the issue recurs after closing the app.
  3. High CPU Usage & Long Startup Time

    • Upon launch, Obsidian takes 8,000ms to 16,000ms to start:
      - Total startup time: 7,998ms
      - Vault (114,211 files): 7,020ms
      
    • CPU usage for the obsidian process remains at 99%+ even after startup.

Steps to Reproduce:

  1. Open Obsidian normally.
  2. Work within a large vault (~114k files in my case).
  3. Exit the application via GUI.
  4. Observe lingering obsidian processes using pgrep -fl obsidian.
  5. Try restarting Obsidian, leading to IndexedDB errors.

Expected Behavior:

  • Obsidian should terminate cleanly when closed from the GUI.
  • No lingering processes should remain.
  • IndexedDB should not remain locked after closing the app.

Workaround:

  • Manually removing the IndexedDB lock file before restarting:
    rm -f ~/.config/obsidian/IndexedDB/app_obsidian.md_0.indexeddb.leveldb/LOCK
    
  • Forcibly killing all Obsidian processes:
    pkill -9 -f obsidian
    
    but this is not an ideal solution.

Additional Notes:

  • Running Obsidian with --disable-gpu does not resolve the issue.
  • Occurs on both X11 and Wayland.
  • Tested with both AppImage and tar.gz distributions, and the issue persists.

Would appreciate any insights or fixes for proper cleanup upon exit!

Something similar related to indexeddb lock already discussed on forum and the workaround suggested but I think no bug was reported.