int iReturn = sqlite3_wal_checkpoint_v2(m_poDB, NULL, SQLITE_CHECKPOINT_FULL, &iSizeOfWalLog, &iNumOfCheckpointedFrames);
возвращается с iReturn = 5 (SQLITE_BUSY). Писатель время от времени просыпается, добавляет или удаляет несколько строк в базе данных, выполняет контрольную точку и снова переходит в режим сна.Не удалось выполнить контрольную точку
Вопрос 1: Как это возможно, если я использую режим WAL и имею 4 считывателя и один писатель?
Вопрос 2: В сообщениях журнала я видел, что контрольная точка часто работает, но только иногда сообщает SQLITE_BUSY. Должен ли я быть обеспокоен, если он работает иногда, но не всегда? Может ли это повредить базу данных?
Вопрос 3: Должен ли я использовать sqlite3_wal_checkpoint_v2 или SQLITE_CHECKPOINT_FULL?