What does HRESULT 0x87AF0006 (SQLITE_E_LOCKED) mean?

 
Previous Next
SQLITE_E_BUSY SQLITE_E_NOMEM

SQLITE_E_LOCKED

SQLITE_E_LOCKED corresponds to SQLite SQLITE_LOCKED. Unlike SQLITE_BUSY, it usually means a conflict within the same database connection or through shared-cache mode.

What to check

  • Review overlapping statements on the same connection and make sure every prepared statement is reset or finalized at the correct time.
  • Check whether shared-cache mode is enabled; SQLite documents it as a distinct source of SQLITE_LOCKED conflicts.
  • Do not hide this with an indefinite retry loop: correct the connection or statement lifetime first.
PRAGMA database_list;

SQLite: Result and Error Codes

SQLite: File locking and concurrency


Looking for a different code? Search another status or error code.