Java SQLite в режиме WAL: база данных заблокирована

Я использую SQLite в своем многопоточном приложении. Чтобы убедиться, что это не вызовет проблем, я установил базу данных SQLite в режим WAL. Все потоки совместно используют одно соединение, которое никогда не закрывается во время выполнения. Однако я получаю эту ошибку при выполнении пакета, и я понятия не имею, почему это происходит. Все записи в базу данных выполняются с помощью однопоточного исполнителя, чтение выполняется в несколько потоков.

java.sql.SQLException: database is locked 
at org.sqlite.DB.throwex(DB.java:370) 
at org.sqlite.DB.executeBatch(DB.java:302) 
at org.sqlite.PrepStmt.executeBatch(PrepStmt.java:93) 

заранее спасибо


person Robin De Baets    schedule 01.05.2016    source источник
comment
Возможный дубликат базы данных, заблокированной в режиме WAL только для читателей   -  person e4c5    schedule 02.05.2016


Ответы (1)


Нашел ответ: я неправильно закрывал соединение после перезагрузки сервера из-за остатков старой системы пула.

person Robin De Baets    schedule 02.05.2016