481 Commits

Author SHA1 Message Date
Леонид Юрьев (Leonid Yuriev)
5fc3965f5b
mdbx: вливание ветки master в devel. 2024-03-21 01:54:20 +03:00
Леонид Юрьев (Leonid Yuriev)
aea40fb79f
mdbx: выпуск 0.12.10 "СЭМ"
Поддерживающий выпуск с исправлением обнаруженных ошибок и устранением недочетов
в память Героя России гвардии майора Дмитрия Семёнова с позывным "СЭМ".

Значимые исправления и доработки:
---------------------------------

 - Устранение унаследованной от LMDB ошибки приводящей к повреждению БД при использовании `MDBX_DUPFIXED`.

 - Исправление ложной ошибки `MDBX_CORRUPTED (-30796)` в сценарии работы
   в режиме `MDBX_DUPFIXED` и нечетной длинной мульти-значений.

 - Исправление недочета корректировки сопутствующих курсоров при разделении страницы
   по сценарию добавления пустой страницы слева.

 - Доработка `rebalance()` ради уменьшения WAF.

 - Исправление assert-проверки внутри `check_txn()` для случая завершенных транзакций в режиме `MDBX_NO_TLS`.
   Последствий ошибки, кроме срабатывания assert-проверки в отладочных сборках, нет.

 - Устранение ошибки при открытии БД на файловой системе только-для-чтения.

 - Удалены излишне строгие проверки в утилите `mdbx_chk`, которые
   приводили к ложно-позитивным ошибкам при проверке БД после серии
   последних доработок.

Более подробная информация в [ChangeLog](https://libmdbx.dqdkfa.ru/md__change_log.html).

git diff' stat: 19 commits, 57 files changed, 751 insertions(+), 331 deletions(-)
Signed-off-by: Леонид Юрьев (Leonid Yuriev) <leo@yuriev.ru>
2024-03-13 14:57:38 +03:00
Леонид Юрьев (Leonid Yuriev)
3e850981c7 mdbx-test: расширение стохастического теста dupfixed-сценариями (backport). 2024-03-06 13:18:58 +03:00
Леонид Юрьев (Leonid Yuriev)
2b88c6261f mdbx-test: добавление в jitter простого теста txn_reset+txn_renew (backport). 2024-03-06 13:18:58 +03:00
Леонид Юрьев (Leonid Yuriev)
1a18369015 mdbx-test: фиксация транзакции при ошибках теста для последующего анализа БД (backport). 2024-03-06 13:18:58 +03:00
Леонид Юрьев (Leonid Yuriev)
f7e6bd770a mdbx-test: соответствие протоколируемых имен тестов опциям командной строки (backport). 2024-03-06 13:18:58 +03:00
Леонид Юрьев (Leonid Yuriev)
ba5c74e54d mdbx-test: добавление extra/dupfixed_addodd (backport). 2024-03-06 13:18:58 +03:00
Леонид Юрьев (Leonid Yuriev)
5df3eb6449 mdbx-test: усиление сценариев тестовых целей в GNUmakefile и CMake. 2024-03-06 11:35:10 +03:00
Леонид Юрьев (Leonid Yuriev)
1c174e84c4 mdbx: добавление mdbx_preopen_snapinfo() в API.
https://gitflic.ru/project/erthink/libmdbx/issue/15
2024-03-05 13:10:29 +03:00
Леонид Юрьев (Leonid Yuriev)
0b87ddc6d4 mdbx-test: добавление в jitter простого теста txn_reset+txn_renew. 2024-03-05 13:10:29 +03:00
Леонид Юрьев (Leonid Yuriev)
0c24b49bbf mdbx-test: расширение стохастического теста dupfixed-сценариями. 2024-03-05 13:10:29 +03:00
Леонид Юрьев (Leonid Yuriev)
d8db63a67d mdbx-test: чуть более разумное/удобное поведение при коллизии генерации не-уникальных пар ключ-значение. 2024-03-05 13:10:29 +03:00
Леонид Юрьев (Leonid Yuriev)
e29cb076d3 mdbx-test: доработка генератора ключей/значений для надежной генерации уникальных значений.
В текущем понимании коммитом этим устраняется застарелая проблема редких
сбоев стохастического теста из-за вероятности ошибочной генерации
повторяющихся пар key-value.
2024-03-05 13:10:28 +03:00
Леонид Юрьев (Leonid Yuriev)
d7f259110c mdbx-test: фиксация транзакции при ошибках теста для последующего анализа БД. 2024-03-03 17:38:41 +03:00
Леонид Юрьев (Leonid Yuriev)
826441741d mdbx: добавление keysize_min() и valsize_min() в API. 2024-03-03 17:38:41 +03:00
Леонид Юрьев (Leonid Yuriev)
00c4e2636e mdbx-test: обновление ГПСЧ. 2024-03-03 17:38:41 +03:00
Леонид Юрьев (Leonid Yuriev)
3373631cff mdbx-test: унификация PRNG и изменение опции командной строки на --prng-seed. 2024-03-03 17:38:23 +03:00
Леонид Юрьев (Leonid Yuriev)
c5ac7b25c9 mdbx-test: доработка генератора пар key-value для поддержки коротких ключей в режиме MDBX_DUPFIXED. 2024-02-28 20:12:39 +03:00
Леонид Юрьев (Leonid Yuriev)
544c6bc1e4 mdbx-test: поддержка rnd/rand/random для опций --keylen и --datalen. 2024-02-28 20:12:39 +03:00
Леонид Юрьев (Leonid Yuriev)
fb5dbbdf20 mdbx-test: соответствие протоколируемых имен тестов опциям командной строки (косметика). 2024-02-28 20:12:38 +03:00
Леонид Юрьев (Leonid Yuriev)
ba719ef12a mdbx-test: доработка after-fork сценариев с устранением логической ошибки. 2024-02-28 20:12:38 +03:00
Леонид Юрьев (Leonid Yuriev)
f0cfedc26f mdbx-test: добавление extra/dupfixed_addodd. 2024-02-28 20:12:38 +03:00
Леонид Юрьев (Leonid Yuriev)
e316bc8b29 mdbx-test: увеличения таймаута для smoke-теста на случай параллельного выполнения под Valgrind. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
5a86afaac3 mdbx-test: 3-часовой таймаут для extra_doubtless_positioning при использовании Valgrind. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
14558fa90b mdbx-test: правка тестов для совместимости с проблемными версиями glibc и glibc++. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
f97c127455 mdbx-test: тест для doubtless-API позиционирования курсоров. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
ef69336189 mdbx-test: добавление теста для транскодеров hex/base64/base58. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
b6034e8045 mdbx-test: правка тестов для совместимости с проблемными версиями glibc и glibc++ (backport). 2023-11-28 09:36:29 +03:00
Леонид Юрьев (Leonid Yuriev)
100e95957c mdbx-test: доработка логирования для использования после/из глобальных деструкторов. 2023-11-12 20:37:57 +03:00
Леонид Юрьев (Leonid Yuriev)
cfce4ef4d3 mdbx-test: явная установка append-режима для stdout/stderr. 2023-11-12 20:37:57 +03:00
Леонид Юрьев (Leonid Yuriev)
d9f49b17de mdbx-test: добавление тестов для mdbx_env_resurrect_after_fork(). 2023-11-12 01:49:53 +03:00
Леонид Юрьев (Leonid Yuriev)
9a6f8a1bf8 mdbx-test: увеличение tail-log до 3333 для CI. 2023-11-11 12:29:13 +03:00
Леонид Юрьев (Leonid Yuriev)
c216e1afb7 mdbx-test: добавление проверки mdbx_dbi_rename(). 2023-11-11 12:29:10 +03:00
Леонид Юрьев (Leonid Yuriev)
7a413406be mdbx-test: обновление исключений для Valgrind. 2023-11-11 12:29:07 +03:00
Леонид Юрьев (Leonid Yuriev)
07fc7b9227 mdbx-test: добавление опции --taillog в стохастический скрипт. 2023-10-30 22:01:35 +03:00
Леонид Юрьев (Leonid Yuriev)
cdbcf54af1 mdbx-tests: добавление --read-var-info=yes для Valgrind. 2023-10-23 20:25:03 +03:00
Леонид Юрьев (Leonid Yuriev)
45721d4064 mdbx-test: устранение жалобы Valgrind на утечку памяти в одном из тестов.
Перед выходом из теста не разрушался курсор.
2023-10-07 18:28:38 +03:00
Леонид Юрьев (Leonid Yuriev)
7d3f136a3a mdbx-cmake: добавление extra-тестов в область видимости ctest. 2023-10-07 09:08:34 +03:00
Леонид Юрьев (Leonid Yuriev)
eb348ca34c mdbx-test-extra: добавление теста dupfixed_multiple. 2023-10-07 09:08:28 +03:00
Леонид Юрьев (Leonid Yuriev)
2abf80a199 mdbx-test-extra: устранение минорных предупреждений старых компиляторов. 2023-05-14 01:07:15 +03:00
Леонид Юрьев (Leonid Yuriev)
99c9bc2411 mdbx: использование clang-format-16. 2023-04-19 11:02:53 +03:00
Леонид Юрьев (Leonid Yuriev)
e47a91bf7c mdbx-test: совместимость со libstdc++ без std::string_view. 2023-04-05 08:57:16 +03:00
Леонид Юрьев (Leonid Yuriev)
3ace3c27b8 mdbx++: добавление typename mdbx::default_allocator. 2023-04-01 11:10:40 +03:00
Леонид Юрьев (Leonid Yuriev)
b5400f9a35 mdbx-test: добавление мини-теста для проверки MainDB с целочисленными ключами. 2023-03-31 22:31:09 +03:00
Леонид Юрьев (Leonid Yuriev)
04ed388761 mdbx-test: добавление extra/upsert_alldups. 2023-03-20 14:38:02 +03:00
Леонид Юрьев (Leonid Yuriev)
800bd55ab9 mdbx-test: добавление опции --extra в скрипт test/long_stochastic.sh 2023-02-28 00:50:48 +03:00
Леонид Юрьев (Leonid Yuriev)
5c52adf358 mdbx-test: расширение набора режимов перебираемых скриптом test/long_stochastic.sh 2023-02-28 00:50:48 +03:00
Leonid Yuriev
6d74b10db1 mdbx: поддержка ASAN (Address Sanitizer) при сборке посредством MSVC. 2023-02-28 00:50:30 +03:00
Леонид Юрьев (Leonid Yuriev)
5f690bbc4f mdbx-test: по-умолчанию работа в режиме MDBX_SYNC_DURABLE. 2023-02-27 16:59:10 +03:00
Леонид Юрьев (Leonid Yuriev)
25e958f081 mdbx: устранение всех предупреждений статического анализатора MSVC (все несущественные или ложные). 2023-02-11 00:26:06 +03:00