SQLITE_IOERR_DIR_FSYNC
SQLiteFATALCriticalI/O Errorofficial confidence

I/O error syncing the journal directory

Production Risk

Critical — journal durability cannot be guaranteed.

What this means

SQLITE_IOERR_DIR_FSYNC (1290) is returned when an fsync() of the directory containing the database file fails. SQLite syncs the directory to ensure new journal files are durably visible.

Why it happens
  1. 1Hardware failure during directory fsync.
  2. 2Filesystem or OS not supporting directory fsync.
How to reproduce

Transaction commit when the directory containing the database cannot be fsynced.

trigger — this will error
trigger — this will error
# Appears as disk I/O error during COMMIT on affected systems

expected output

sqlite3.DatabaseError: disk I/O error

Fix 1

Fix 2

Sources
Official documentation ↗

sqlite3.h — SQLITE_IOERR_DIR_FSYNC = 1290

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All SQLite errors