Я создаю транзакцию явно, используя SQLITE, то есть:
sqlite3_exec (дБ, "BEGIN", NULL, NULL, NULL);
сделать кучу вставок
sqlite3_exec (дБ, "END", NULL, NULL, NULL);
Я ожидаю, что база данных будет буферизовать вставки между этой парой до тех пор, пока не будет достигнут конец, а затем сбросить все это на диск.
Похоже, что он этого не делает, вместо этого он сбрасывается на диск через регулярные промежутки времени.
Я также замечаю, что иногда я не могу успешно выполнить оператор выбора в той же базе данных из другойпроцесс, и я подозреваю, что это может быть связано с моей стратегией использования транзакций.В этих случаях выбор завершается неудачно из-за состояния LOCK или BUSY на БД.
Кто-нибудь знает, как обрабатывать SQLITE вручную, чтобы буферизовать вставки для лучшей производительности?
Большое спасибо!