SQLite Forum

PRAGMA wal_checkpoint(RESTART) unexpectedly returning SQLITE_BUSY immediately
Login
If there is another checkpointer running, sqlite3_wal_checkpoint_v2() will return SQLITE_BUSY immediately. It only uses the busy handler for database readers and writers. The PRAGMA is similar.

Any connections configured to do auto-checkpoints that might be running a checkpoint?