Nextcloud desktop 35.0.1 won't start: "UNIQUE constraint failed: metadata.inode"

Sqlite exec statement error: 19 "UNIQUE constraint failed: metadata.inode" in "CREATE UNIQUE INDEX IF NOT EXISTS metadata_unique_inode ON metadata(inode);"

Short answer: Nextcloud desktop 35.0.1 crashes at startup when its sync journal has duplicate file IDs. Install 35.0.0 over it; your settings and sync state stay. Nextcloud has already reverted the change for 35.0.2.

Why it happens

35.0.1 (29 October 2026) adds a step that creates a unique index on the <code>inode</code> column of the local sync journal, the hidden <code>.sync_*.db</code> file in each sync folder. If the journal already has two rows with the same inode, the index can't be created. The SQL fails, an assertion fires, and the client exits on every launch, on Windows, macOS and Linux alike. The duplicates come from old rows for files that were deleted or later excluded, whose file IDs the file system reused (one reporter found 3,052 of them on NTFS), and from hard links, such as <code>.git</code> objects shared between clones. Nextcloud reverted the index on 30 October (PR #11179, backported to stable-35.0 as #11182) for 35.0.2. Because the client stops before it opens, its built-in updater can't install a fix by itself. Checked on 1 November 2026: six issues, with users on Windows 10 and 11 confirming the rollback, and users on macOS and Linux confirming the journal rebuild.

You may also see

ENFORCE: "allow_failure" in file .../src/common/ownsql.cpp, line 255
Faulting application name: nextcloud.exe, version: 35.0.1.10405 ... Faulting module name: Qt6Core.dll ... Exception code: 0xc0000409
The cloud file provider exited unexpectedly.

Fix

  1. Check it's this: the client was updated to 35.0.1 (Windows: Settings → Apps → Nextcloud) and now never opens. Windows may show "The cloud file provider exited unexpectedly", and Event Viewer logs a nextcloud.exe crash in Qt6Core.dll.
  2. Windows, fastest fix: uninstall Nextcloud 35.0.1 (Settings → Apps), then run https://download.nextcloud.com/desktop/releases/Windows/Nextcloud-35.0.0-x64.msi. Users report that the account, sync folders and journal are kept and there is no full resync. Uninstall first, because Windows Installer usually refuses to put an older version over a newer one.
  3. macOS: quit Nextcloud, move it from Applications to the Trash (your settings stay in your user Library), then install https://download.nextcloud.com/desktop/releases/Mac/Installer/Nextcloud-35.0.0.pkg. Linux AppImage: run Nextcloud-35.0.0-x86_64.AppImage from the same server (/desktop/releases/Linux/) instead of the 35.0.1 file.
  4. After the rollback, open Settings → General and untick Automatically check for updates until 35.0.2 is out, so the client doesn't move back to 35.0.1.
  5. Want to stay on 35.0.1 (classic sync, no hard links in the folder)? Quit the client. In the root of each local sync folder, move the hidden .sync_*.db files, plus any .sync_*.db-wal and .sync_*.db-shm, to a backup folder. Then start the client. It rebuilds the journal and re-checks your files; reporters on macOS and Linux saw "All synced!" within minutes, with files and settings kept. To see hidden files: Windows Explorer → View → Show → Hidden items; macOS Finder → Cmd+Shift+. (dot).
  6. Hard links inside the sync folder (for example git repositories cloned from a local path) cause real duplicate inodes, so a rebuilt journal fails again. Use the rollback.
  7. When 35.0.2 is released, download it by hand from nextcloud.com/install, then turn update checks back on.

Watch out

Sources

Did this fix it?

What's still not working?

Describe what happens and paste any error message. We read every report and fix the page.

Other errors breaking soon

All "breaking soon" fixes