2015-02-06 2 views
0

Я работаю над проектом, который опирается на изоляцию прочитанного моментального снимка, которую предоставляет режим журнала WAL в Sqlite. Он использует несколько подключений к одной и той же базе данных, чтобы обеспечить одновременную работу считывателей и одного автора.SQLite WAL-режим, встроенная память, база данных с закрытым кешем?

Для тестирования я хотел бы использовать базу данных в памяти, но, насколько я могу судить, для этого требуется SQLITE_OPEN_SHAREDCACHE (что делает недействительным гарантию на защиту от снимка с моментальным снимком, обеспечиваемую режимом WAL).

Есть ли способ открыть несколько соединений в режиме WAL, в режиме WAL, в базе данных SQLite в режиме приватного кэша?

Возможно, существует (ранее существовавшее) решение VFS для этой проблемы?

WAL-mode docs

ответ

0

режим WAL не относится к базам данных в оперативной памяти.

Чтобы получить WAL (и прочитать изоляцию моментальных снимков), вам необходимо использовать временную базу данных на диске. (Этот диск может быть RAM-диском.)

+0

Есть ли способ получить изоляцию снимков в базе данных в памяти? – skabbes

Смежные вопросы