Вышел релиз БД SQLite 3.7.4, в котором, кроме исправления ошибок, добавлены следующие новшества:
- Добавлен интерфейс sqlite3_blob_reopen(), позволяющий привязать существующий объект sqlite3_blob к другой строке таблицы. Вызов sqlite3_blob_reopen() теперь используется в SQLite для оптимизации производительности модуля полнотекстового поиска FTS;
- В VFS, интерфейсе между ядром SQLite и функциями операционной системы, в случае отсутствия поддержки разделяемой памяти (shared memory) теперь можно организовать доступ к WAL-базам, если PRAGMA-переменная locking_mode установлена в EXCLUSIVE;
- Расширены возможности команды "EXPLAIN QUERY PLAN";
- Добавлен интерфейс sqlite3_stmt_readonly();
- Добавлена PRAGMA-переменная checkpoint_fullfsync, позволяющая включить использование метода синхронизации F_FULLFSYNC, в случае его поддержки операционной системой;
- В функцию sqlite3_file_control() добавлена поддержка опции SQLITE_FCNTL_FILE_POINTER;
- Добавлен обновленный модуль полнотекстового поиска FTS4. От FTP3 новая версия отличается проведением значительных оптимизаций производительности, расширением возможностей функции matchinfo() и увеличением размера базы на диске (обычно 1-2%, но для мелких документов может доходить до 10%);
- Добавлены новые примеры использования расширенных функций SQLite: test_superlock.c и test_multiplex.c;
- Исправлена неприятная ошибка, приводившая к выводу некорректного результата при выполнении подзапросов (join) при определенном наборе условий "OR" в запросе.
|