Леонид Юрьев (Leonid Yuriev)
1b1bec2b30
mdbx: отключение MSVC предупреждений C5286 и C5287.
2025-07-11 10:44:17 +03:00
Leonid Yuriev
c7b119af68
mdbx: исправление сравнения знакового и беззнакового значений.
2025-07-11 10:36:32 +03:00
Леонид Юрьев (Leonid Yuriev)
57ffdf6cd9
mdbx-tests: дополнение cmake-тестов сценариями запуска mdbx_copy
.
2025-07-11 10:36:09 +03:00
Леонид Юрьев (Leonid Yuriev)
e28f484947
mdbx: удаление лишних/вредных assert-проверок внутри txn_lock()
/txn_unlock()
.
2025-07-11 10:36:09 +03:00
Леонид Юрьев (Leonid Yuriev)
53c14bc92c
mdbx-tools: добавление опции -f
в утилиту mdbx_copy
.
2025-07-11 10:36:09 +03:00
Леонид Юрьев (Leonid Yuriev)
4bb69a1c8f
mdbx-tests: простейшее тестирование MDBX_CP_OVERWRITE
.
2025-07-11 10:36:09 +03:00
Леонид Юрьев (Leonid Yuriev)
ba6ce86d5f
mdbx: добавление опции MDBX_CP_OVERWRITE
в API копирования БД.
2025-07-11 10:36:09 +03:00
Леонид Юрьев (Leonid Yuriev)
fa73f44ff0
mdbx: дополнение ChangeLog.
2025-06-28 10:48:11 +03:00
Леонид Юрьев (Leonid Yuriev)
79b33ba8fd
mdbx: устранение предупреждения lcc-1.29
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
a600c2a7a2
mdbx: устранение вероятности ошибки MDBX_ENODATA
при поиске в GC.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
10bf63eb9a
mdbx: замена части PNL-макросов функциями.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
9020ea9d6c
mdbx: допущение нехватки страниц при ранней/не-отложенной очистке GC (продолжение).
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
31d5ab62bf
mdbx-tests: остановка/отстрел дочерних процессов с ожиданием.
...
Основная цель = обеспечить формирование логов без обрезания хвостов, в том числе при использовании дублирования (tee) и компрессии (lz4/gzip).
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
ecf5acfff0
mdbx: изоляция txl-списков от кода PNL.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
bb37c93dd5
mdbx: ранняя/не-отложенная очистка GC (начало).
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
40af0565c5
mdbx-tests: явное NUMA-распределение в battery/tmux-тесте.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
0359eca01c
mdbx-tests: поддержка опции --numa #
для привязки стохастического теста к NUMA-узлу.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
d461ba86c7
mdbx++: несущественная корректировка конструкторов mdbx::buffer::silo
.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
b49cd49c68
mdbx: интенсификация слияния страниц изменением порога по-умолчанию с 25% до 33%.
...
Ранее две страницы объединялись если были заполнены на 25% или менее, с образованием страницы заполненной на 50% или менее.
Теперь порог по-умолчанию установлен в 33%, что при объединении будет порождать страницу заполненную на 66%.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
75131c082b
mdbx: добавление rkl_destructive_merge()
и унификация порядка dst/src аргументов rkl_merge()
.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
3462bc116a
mdbx: удаление known_continuous
аргумента rkl_push()
.
2025-06-28 00:34:04 +03:00
Леонид Юрьев (Leonid Yuriev)
b3329fddf2
mdbx: исправление опечатки MDBX_ENOMEM
.
...
Вместо `MDBX_ENOMEM` был использован идентификатор `ENOMEM`,
что могло ломать сборку на не-POSIX/Windows платформах,
в зависимости от конфигурации и/или версии SDK.
2025-06-01 11:26:17 +03:00
Леонид Юрьев (Leonid Yuriev)
8b4ec09d08
mdbx: исправление имён параметров в прототипе rkl_destructive_move()
.
2025-05-29 22:56:34 +03:00
Леонид Юрьев (Leonid Yuriev)
ecbffc65f4
mdbx: дополнение ChangeLog.
2025-05-21 14:13:36 +03:00
Леонид Юрьев (Leonid Yuriev)
e03b8e1227
mdbx: добавление ignore_enosys_and_einval()
и её использование для отказа от OFD-блокировок.
2025-05-20 13:37:54 +03:00
Леонид Юрьев (Leonid Yuriev)
c88c51d33c
mdbx: разделение ignore_enosys()
и ignore_enosys_and_eagain()
.
2025-05-20 13:37:54 +03:00
Леонид Юрьев (Leonid Yuriev)
ef82fea032
mdbx: избавление от memset()
внутри lck_op()
.
2025-05-20 13:37:54 +03:00
Леонид Юрьев (Leonid Yuriev)
f82cf6a4b3
mdbx: перемещение и доработка проверки _FILE_OFFSET_BITS
для Android.
2025-05-20 13:37:54 +03:00
Леонид Юрьев (Leonid Yuriev)
60c0483987
mdbx-tests: устранение бестолковых предупреждений MSVC.
2025-05-16 00:50:55 +03:00
Леонид Юрьев (Leonid Yuriev)
9da03deac0
mdbx: исправление пропущенного const
(косметика).
2025-05-16 00:08:51 +03:00
Леонид Юрьев (Leonid Yuriev)
34f0f682da
mdbx: исправление assert-проверки внутри txn_end()
.
...
В случае ошибки запуска транзакции (например из-за невозможности расширения отображения при увеличении БД в другом процессе),
сигнатура транзакции отсутствует, что вызывало срабатывание assert-проверки.
2025-05-15 23:29:18 +03:00
Леонид Юрьев (Leonid Yuriev)
9fb0919468
mdbx: опечатка в ChangLog.
2025-05-06 15:41:31 +03:00
Леонид Юрьев (Leonid Yuriev)
a13147d115
mdbx: выпуск 0.14.1 "Горналь".
...
Первый выпуск в новом кусте/линейке версий с добавлением функционала, расширением API и внутренними переработками.
За перечнем доработок и изменений обращайтесь к [ChangeLog](https://libmdbx.dqdkfa.ru/md__change_log.html ).
git diff' stat: 166 files changed, 9467 insertions(+), 5597 deletions(-).
Signed-off-by: Леонид Юрьев (Leonid Yuriev) <leo@yuriev.ru>
v0.14.1
2025-05-06 14:15:36 +03:00
Леонид Юрьев (Leonid Yuriev)
800c96f22f
mdbx: доработка перераспределения резерва при возврате страниц в GC.
...
В экстремальных случаях, масштабирование одного операнда и 32-бит не хватает для предотвращения потери значимости расчетного коэффициента.
Поэтому здесь реализован переход на фиксированную точку 32-точка-32 с одним 64-битным делением и двумя полными умножениями 32*32->64.
Для 32-битных систем можно сделать чуть легче, заменив 64-битую арифметику масштабированием (адаптивным сдвигом) обоих операндов, но пока не вижу в этом смысла.
2025-05-02 17:59:30 +03:00
Леонид Юрьев (Leonid Yuriev)
d1023dc6b5
mdbx: merge branch devel
.
2025-04-29 12:03:50 +03:00
Леонид Юрьев (Leonid Yuriev)
859c350df0
mdbx: дополнение ChangeLog.
2025-04-29 08:39:35 +03:00
Леонид Юрьев (Leonid Yuriev)
76e2544cc0
mdbx: доработки gc_handle_dense()
для экстремально-редких случаев.
2025-04-29 08:39:18 +03:00
Леонид Юрьев (Leonid Yuriev)
0a96b2ad97
mdbx-doc: дополнение раздела "Containers" в README.
2025-04-28 14:43:01 +03:00
Леонид Юрьев (Leonid Yuriev)
402a8e62be
mdbx: merge branch master
into devel
.
2025-04-26 00:17:57 +03:00
Леонид Юрьев (Leonid Yuriev)
06300de34e
mdbx: подсказки для coverity.
2025-04-26 00:15:52 +03:00
Леонид Юрьев (Leonid Yuriev)
da9f78d2f6
mdbx: несущественные доработки rkl.
2025-04-26 00:15:52 +03:00
Леонид Юрьев (Leonid Yuriev)
a5af0c1a85
mdbx: исправление глупой утечки памяти в rkl_destroy()
.
2025-04-26 00:15:52 +03:00
Леонид Юрьев (Leonid Yuriev)
2b36fd5974
mdbx: новый код обновления GC.
2025-04-26 00:15:41 +03:00
Леонид Юрьев (Leonid Yuriev)
3338551860
mdbx: рефакторинг макроса TXN_FOREACH_DBI_FROM
с выделением функции dbi_foreach_step()
.
2025-04-24 23:26:22 +03:00
Леонид Юрьев (Leonid Yuriev)
1c7a5e18fe
mdbx: подсказки для coverity.
2025-04-24 15:39:07 +03:00
Леонид Юрьев (Leonid Yuriev)
6627d14edf
mdbx: упрощение старта транзакций и исправление возможности double-free при ошибке создания вложенной транзакции.
2025-04-24 11:11:31 +03:00
Леонид Юрьев (Leonid Yuriev)
7db9c40fe0
mdbx-tests: установка max-dbi для extra/cursor-closing.
2025-04-23 23:01:27 +03:00
Леонид Юрьев (Leonid Yuriev)
52c9ef8807
mdbx: merge branch stable
into master
.
2025-04-22 15:56:02 +03:00
Леонид Юрьев (Leonid Yuriev)
5c44dd201c
mdbx: обновление патча для старых версий buildroot.
2025-04-22 14:43:37 +03:00
Леонид Юрьев (Leonid Yuriev)
f4384800b5
mdbx: обновление ChangeLog.
2025-04-22 13:10:30 +03:00