Tá eisiúint SQLite 3.40, DBMS éadrom atá deartha mar leabharlann plug-in, foilsithe. Déantar an cód SQLite a dháileadh mar fhearann poiblí, i.e. féadfar é a úsáid gan srianta agus saor in aisce chun críche ar bith. Soláthraíonn cuibhreannas a cruthaíodh go speisialta tacaíocht airgeadais d’fhorbróirí SQLite, lena n-áirítear cuideachtaí ar nós Adobe, Oracle, Mozilla, Bentley agus Bloomberg.
Athruithe móra:
- Реализована экспериментальная возможность компиляции SQLite в промежуточный код WebAssembly, способный запускаться в web-браузере и пригодный для организации работы с БД из web-приложений на языке JavaScript. Web-разработчикам предоставляется высокоуровневый объектно-ориентированный интерфейс для работы с данными в стиле sql.js или Node.js, обвязка над низкоуровневым C API и API на базе механизма Web Worker, позволяющий создавать асинхронные обработчики, выполняемые в отдельных потоках. Данные, которые web-приложения сохраняют в WASM-версии SQLite, могут быть сохранены на стороне клиента при помощи OPFS (Origin-Private FileSystem) или API window.localStorage.
- Добавлено расширение recovery, предназначенное для восстановления данных из повреждённых файлов с БД. В интерфейсе командной строки для восстановления используется команда «.recover».
- Улучшена работа планировщика запросов. Убраны ограничения при использовании индексов с таблицами, насчитывающими более 63 столбцов (ранее при операциях со столбцами, порядковый номер которых превышает 63, индексация не применялась). Улучшена индексация значений, используемых в выражениях. Прекращена загрузка с диска больших строк и блобов при обработке операторов NOT NULL и IS NULL. Исключена материализация представлений для которых полное сканирование выполняется только один раз.
- В кодовой базе вместо типа «char *» для представления имён файлов задействован отдельный тип sqlite3_filename.
- Добавлена внутренняя функция sqlite3_value_encoding().
- Добавлен режим SQLITE_DBCONFIG_DEFENSIVE, запрещающий изменение версии схемы хранения данных.
- В реализацию параметра «PRAGMA integrity_check» добавлены дополнительные проверки. Например, в таблицы без признака STRICT не должны содержать числовых значений в столбцах с типом TEXT и строковых значений с числами в столбцах с типом NUMERIC. Также добавлена проверка корректности порядка следования строк в таблицах с признаком «WITHOUT ROWID».
- В выражении «VACUUM INTO» учтены настройки «PRAGMA synchronous».
- Добавлена сборочная опция SQLITE_MAX_ALLOCATION_SIZE, позволяющая ограничить размер блоков при распределении памяти.
- Встроенный в SQLite алгоритм генерации псевдослучайных чисел переведён с использования потокового шифра RC4 на Chacha20.
- Разрешено использование в разных схемах данных индексов с одинаковыми именами.
- Внесены оптимизации производительности, позволившие снизить нагрузку на CPU примерно на 1% при типовой активности.
Foinse: oscailtenet.ru