libmdbx 0.12.9 (Ясень-4)
Стабилизирующий выпуск с исправлением обнаруженных ошибок и устранением недочетов.
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.
Загрузки:
- 288K, libmdbx-amalgamated-0.12.9.zpaq, sha256sum:
562431339a34f8db352b66677997337d4d6a7b797b8af5d93b743e09687fbc76
- 386K, libmdbx-amalgamated-0.12.9.tar.xz, sha256sum:
6ccc5277bfb13ce744fb6d2128de0b11c8f58c81c1fe06179ceaac5c28125a6e
За информацией о предыдущих версиях обращайтесь к тегам git и ChangeLog.