SQLite

View Ticket
Login
Ticket Hash: fb3b3024ea238d5c185adf459f64ca6dca84e645
Title: Debug assertion assert_pager_state: Assertion `pPager->changeCountDone==0 || pPager->eLock>=RESERVED_LOCK' failed
Status: Fixed Type: Code_Defect
Severity: Important Priority: Low
Subsystem: Unknown Resolution: Fixed
Last Modified: 2019-12-27 01:51:04
Version Found In: 3.30.0
User Comments:
mrigger added on 2019-12-27 00:26:22:

Consider the following test case:

PRAGMA locking_mode = EXCLUSIVE;
PRAGMA journal_mode = WAL;
PRAGMA locking_mode = NORMAL;
PRAGMA integrity_check;
PRAGMA journal_mode = MEMORY; -- sqlite3.c:51926: assert_pager_state: Assertion `pPager->changeCountDone==0 || pPager->eLock>=RESERVED_LOCK' failed.

When compiling with -DSQLITE_DEBUG, the last PRAGMA triggers an assertion error.