libmdbx 0.12.9 (Ясень-4)

Леонид Юрьев обновлён 1 год назад v0.12.9 185e43f Релиз
0
Описание

Стабилизирующий выпуск с исправлением обнаруженных ошибок и устранением недочетов.

Translation to English by Google and by Yandex.

git diff' stat: 32 commits, 8 files changed, 667 insertions(+), 401 deletions(-)
Signed-off-by: Леонид Юрьев (Leonid Yuriev) <leo@yuriev.ru>

Исправления и доработки:

  • Ликвидация зависимости от ранее удаленной опции MDBX_ENABLE_PREFAULT, из-за чего опция MDBX_ENABLE_MINCORE не включалась автоматически, что приводило к не-активации соответствующего улучшения и не-достижению декларируемого уровня производительности в сценариях использования в режиме MDBX_WRITEMAP.

  • Исправление авто-установки MDBX_ENV_CHECKPID при отключении использования функционала madvise() посредством опции сборки MDBX_ENABLE_MADVISE=0. Из-за чего при поддержке системой madvise(MADV_DONTFORK) не включался контроль pid.

  • Добавлена проверка переданного ключа на NULL при обработке MDBX_GET_MULTIPLE.

  • Добавлена проверка номеров корневых страниц в coherency_check().

  • Обеспечен const для начала и конца диапазона в аргументах mdbx_estimate_range().

  • Из разрабатываемой версии перенесены не-нарушающие совместимости доработки C++ API:

    • добавлен тип mdbx::cursor::estimation_result, а поведение методов cursor::estimate() унифицировано с cursor::move();
    • для предотвращения незаметного неверного использования API, для инициализации возвращаемых по ссылке срезов, вместо пустых срезов задействован slice::invalid();
    • добавлены дополнительные C++ операторы преобразования к типам C API;
    • для совместимости со старыми стандартами C++ и старыми версиями STL перенесены в public классы buffer::move_assign_alloc и buffer::copy_assign_alloc;
    • добавлен тип mdbx::default_buffer;
    • для срезов и буферов добавлены методы hex_decode(), base64_decode(), base58_decode();
    • добавлен тип mdbx::comparator и функций mdbx::default_comparator();
    • добавлены статические методы buffer::hex(), base64(), base58();
    • для транзакций и курсоров добавлены методы get_/set_context;
    • добавлен метод cursor::clone();
  • Поддержка base58 приведена в соответствии с черновиком RFC.

  • Переработка/исправление to_hex() и from_hex().

  • Уменьшение MDBX_opt_rp_augment_limit по умолчанию до 1/3 от текущего количества страниц в БД.

Более подробная информация в ChangeLog.

Загрузки:


За информацией о предыдущих версиях обращайтесь к тегам git и ChangeLog.

Файлы
  • Нет файлов