From 248208cf5dc8350c6d9a0b75418d992577064689 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9B=D0=B5=D0=BE=D0=BD=D0=B8=D0=B4=20=D0=AE=D1=80=D1=8C?= =?UTF-8?q?=D0=B5=D0=B2=20=28Leonid=20Yuriev=29?= Date: Wed, 11 Oct 2023 11:14:28 +0300 Subject: [PATCH] =?UTF-8?q?mdbx:=20=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B5=20ChangeLog=20(=D0=BF=D0=BB=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D1=80=D0=B5?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=D0=B0).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ChangeLog.md | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index bf984911..5c85fc11 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -5,9 +5,14 @@ English version [by Google](https://gitflic-ru.translate.goog/project/erthink/li and [by Yandex](https://translated.turbopages.org/proxy_u/ru-en.en/https/gitflic.ru/project/erthink/libmdbx/blob?file=ChangeLog.md). -## v0.12.8 (сопровождение и подготовка к релизу) +## v0.12.8 "Владимир Уткин" (запланировано на 2023-10-17) -Поддержка стабильной ветки. +Стабилизирующий выпуск с исправлением обнаруженных ошибок и устранением недочетов, +в день 100-летия со дня рождения выдающегося советского и российского ученого и конструктора [Влади́мира Фёдоровича У́ткина](https://ru.wikipedia.org/wiki/Уткин,_Владимир_Фёдорович). + +``` +git diff' stat: 22 commits, 570 insertions(+), 58 deletions(-) +``` Благодарности: @@ -16,16 +21,19 @@ and [by Yandex](https://translated.turbopages.org/proxy_u/ru-en.en/https/gitflic Исправления и доработки: - - Реализована перезапись в `mdbx_put(MDBX_CURRENT)` всех текущих мульти-значений ключа - при отсутствии флага `MDBX_NOOVERWRITE`. Ранее в такой ситуации возвращалась ошибка `MDBX_EMULTIVAL`. - В текущем понимании новое поведение более удобно и не создаёт проблем совместимости с ранее написанным кодом. - - Устранение регресса/ошибки в пути обработки `put(MDBX_MULTIPLE)` при пакетном/оптовом помещении в БД множественных значений одного ключа (aka multi-value или dupsort). Проявление проблемы зависит от компилятора и опций оптимизации/кодогенерации, но с большой вероятностью возвращется ошибка `MDBX_BAD_VALSIZE` (`-30781`), а в отладочных сборках срабатывает проверка `cASSERT(mc, !"Invalid key-size")`. Сценарии приводящие к другим проявлениям на данный момент не известны. + - Реализована перезапись в `mdbx_put(MDBX_CURRENT)` всех текущих мульти-значений ключа + при отсутствии флага `MDBX_NOOVERWRITE`. Ранее в такой ситуации возвращалась ошибка `MDBX_EMULTIVAL`. + В текущем понимании новое поведение более удобно и не создаёт проблем совместимости с ранее написанным кодом. + + - Добавлена возможность использовать `mdbx_cursor_get(MDBX_GET_MULTIPLE)` без предварительной установки + курсора, совмещая операцию пакетного получения данных с позиционированием курсора на передаваемый ключ. + - Микрооптимизация и рефакториг `cursor_put_nochecklen()` в продолжение исправления регресса/ошибки в пути обработки `put(MDBX_MULTIPLE)`.