вторник, октября 21, 2014

SQLite 3.8.7

В новом выпуске:
  • Проведена большая работа по оптимизации производительности, затронувшая многие части кодовой базы. В результате удалось повысить производительность на 20% по сравнению с прошлой версией. Тестирование проводилось с измерением результатов работы нагрузочного сценария "speedtest1.c" через прокси cachegrind в 64-разрядной сборке Ubuntu 13.10 с gcc 4.8.1 и при указании флага оптимизации "-Os". В реальных приложениях увеличение скорости ожидается на уровне 10%. За последний год отмечается большой прогресс в оптимизации кодовой базы SQLite, например по сравнению с выпуском 3.8.0 при выполнении синтетических тестов производительность возросла на 61%.
  • В сортировщик добавлена поддержка использования вспомогательных обработчиков, выполняемых в отдельных нитях, что позволяет добиться сокращения времени отклика при выполнении сложных запросов. По умолчанию данная возможность отключена и включается через PRAGMA threads или через сборку с опцией SQLITE_DEFAULT_WORKER_THREADS. Для ограничения числа нитей следует использовать опцию SQLITE_LIMIT_WORKER_THREADS в sqlite3_limit();
  • Расширены оптимизации пропуска элементов при сканировании (skip-scan), добавлена возможность пропуска записей в середине индекса, а не только в его начальной части;
  • Улучшена производительность операторов преобразования типов;
  • Внесены улучшения в метод использования статистики sqlite_stat4 при планировании выполнения запроса;
  • Добавлены новые программные интерфейсы, оперирующие 64-разрядными значениями: sqlite3_malloc64(), sqlite3_realloc64(), sqlite3_bind_blob64(), sqlite3_result_blob64(), sqlite3_bind_text64() и sqlite3_result_text64();
  • Добавлен новый программный интерфейс sqlite3_msize(), который возвращает размер памяти, выделенной через sqlite3_malloc64() и подобные функции;
  • В расширении spellfix1 представлена возможность явного приведения rowid для каждой операции INSERT.
  • Добавлено новое расширение user-auth, позволяющее обеспечить применение аутентификации пользователей при доступе к БД;
  • Прекращена поддержка опции SQLITE_ENABLE_TREE_EXPLAIN, вместо которой следует использовать механизм трассировки запроса SELECTTRACE, предоставляющий больше диагностических данных;
  • В интерфейс командной строки добавлены новые опции "--pagecache", "--lookaside" и "--scratch" для настройки использования дополнительной памяти. 

Debian 7.7

Представлен выпуск дистрибутива Debian 7.7, в который включены все доступные обновления пакетов и устранены недоработки в инсталляторе. Напомним, что начиная с Debian Wheezy изменена схема нумерации релизов - первая цифра в номере версии теперь связана со значительными выпусками, а вторая с корректирующими обновлениями.

Debian 7.7 включает 45 обновлений с устранением серьезных проблем со стабильностью и 73 обновления с устранением уязвимостей. По сравнению с прошлым выпуском из репозиториев удалены 4 пакета: ctn (проблемы с поставкой), ssdeep (проблемы с поставкой), dicomnifti (зависит от удалённого ctn) и ctsim (зависит от ctn). Пакет tzdata обновлён с версии 2014с до 2014h (переход 25 октября на постоянное зимнее время в РФ отражён в выпуске 2014f).

Установочные сборки доступны для загрузки. Системы, установленные ранее и поддерживаемые в актуальном состоянии, получают обновления, присутствующие в Debian 7.7, через штатную систему установки обновлений. Включенные в Debian 7.7 исправления проблем безопасности доступны пользователям по мере выхода обновлений через сервис security.debian.org.