mdbx: начало разработки ветки 0.14.

This commit is contained in:
Леонид Юрьев (Leonid Yuriev) 2025-01-13 16:54:52 +03:00
parent bd45668fee
commit 84e2c70b98
No known key found for this signature in database
GPG Key ID: 518BD10B927E8686
2 changed files with 28 additions and 2 deletions

View File

@ -5,6 +5,32 @@ English version [by liar Google](https://libmdbx-dqdkfa-ru.translate.goog/md__ch
and [by Yandex](https://translated.turbopages.org/proxy_u/ru-en.en/https/libmdbx.dqdkfa.ru/md__change_log.html).
## v0.14.0 от 2023-03-13
Технический тэг, отмечающий начало ветки `0.14`
с новым функционалом и изменением API.
Запланированные новые возможности 0.14:
1. Ранняя (не-отложенная) очистка GC и рефакторинг обновления GC, самостоятельной видимой для пользователя ценности не имеет, но требуется для последующих пунктов.
Будет реализовано в 0.14.1.
2. Явная дефрагментация БД. В API будет добавлена функция с двумя парами параметров:
- минимальный (требуемый) объем дефрагментации (уменьшения БД) и минимальное время, которое следует потратить;
- максимальный (ограничивающий) объем дефрагментации и максимальной время, которое допустимо потратить.
Упрощенно, алгоритмически явная дефрагментация сводиться к сканированию b-tree с формированием списка страниц расположенных близко к концу БД, а затем копирование этих страниц в не-используемые, но расположенные ближе к началу БД.
Будет реализовано в 0.14.2.
3. Нелинейная переработка GC, без остановки переработки мусора на старом MVCC-снимке используемом долгой транзакцией чтения.
Будет реализовано предположительно в 0.14.3, 0.14.4 или даже в 0.15.x.
Перенос в 0.15.x оправдан возможностью переноса функционала дефрагментации в stable-ветку, но посмотри как пойдут дела.
********************************************************************************
## v0.13.3 "Королёв" от 2025-01-12
Поддерживающий выпуск с исправлением обнаруженных ошибок и устранением недочетов

4
mdbx.h
View File

@ -581,9 +581,9 @@ typedef mode_t mdbx_mode_t;
extern "C" {
#endif
/* MDBX version 0.13.x */
/* MDBX version 0.14.x */
#define MDBX_VERSION_MAJOR 0
#define MDBX_VERSION_MINOR 13
#define MDBX_VERSION_MINOR 14
#ifndef LIBMDBX_API
#if defined(LIBMDBX_EXPORTS) || defined(DOXYGEN)