177 Commits

Author SHA1 Message Date
Леонид Юрьев (Leonid Yuriev)
57e558a57d mdbx: использование термина "таблица" вместо "sub-database". 2024-08-03 15:14:23 +03:00
Леонид Юрьев (Leonid Yuriev)
d21ae28bb9 mdbx++: добавление обработки MDBX_MVCC_RETARDED в C++ API. 2024-08-02 23:33:22 +03:00
Леонид Юрьев (Leonid Yuriev)
7873118cdb mdbx++: добавление (рас)парковки транзакций чтения в C++ API. 2024-07-24 19:58:02 +03:00
Леонид Юрьев (Leonid Yuriev)
2e7d325cf1 mdbx: добавление поддержки MDBX_OUSTED в mdbx_strerror() и C++ API. 2024-07-24 15:57:55 +03:00
Леонид Юрьев (Leonid Yuriev)
b4f395be50 mdbx++: добавление недостающего метода mdbx::env::limits::max_map_handles(). 2024-07-04 23:20:37 +03:00
Леонид Юрьев (Leonid Yuriev)
49c6e14b30 mdbx++: расширение API методами принимающими имена subDb через mdbx::slice. 2024-07-04 23:20:37 +03:00
Леонид Юрьев (Leonid Yuriev)
bcd955aeb9 mdbx++: исправление append_u8(). 2024-06-19 14:18:18 +03:00
Леонид Юрьев (Leonid Yuriev)
a79a318d61 mdbx++: поддержка MDBX_VALIDATION. 2024-06-19 14:18:18 +03:00
Леонид Юрьев (Leonid Yuriev)
25efb58790 mdbx++: добавление перегрузок put/insert/upsert для mdbx::pair. 2024-06-19 14:18:18 +03:00
Леонид Юрьев (Leonid Yuriev)
3de3d425a1 mdbx: изменение лицензии и реструктуризация исходного кода. 2024-06-19 14:18:18 +03:00
Леонид Юрьев (Leonid Yuriev)
e9f5c0c308 mdbx++: упрощение buffer:silo::inplace_signature. 2024-05-19 22:07:20 +03:00
Леонид Юрьев (Leonid Yuriev)
e56c73b4e6 mdbx: добавление режима MDBX_NOSTICKYTHREADS вместо MDBX_NOTLS. 2024-04-04 12:52:50 +03:00
Леонид Юрьев (Leonid Yuriev)
1727b697a0 mdbx-doc: устранение отложенных недоработок в документации. 2024-04-04 12:52:30 +03:00
Леонид Юрьев (Leonid Yuriev)
2cc6d68c07 mdbx++: добавление txn::open_map_accede(). 2024-04-01 16:06:09 +03:00
Леонид Юрьев (Leonid Yuriev)
b36679ddcb mdbx++: buffer::append_bytes(). 2024-03-31 14:29:17 +03:00
Леонид Юрьев (Leonid Yuriev)
d4f7b4114b mdbx++: добавление buffer::clear_and_reserve(). 2024-03-31 14:28:50 +03:00
Леонид Юрьев (Leonid Yuriev)
e9a49e3715 mdbx++: добавление перегрузок со std::string_view для методов open_map/create_map_/drop_map/clear_map/rename_map(). 2024-03-31 14:27:19 +03:00
Леонид Юрьев (Leonid Yuriev)
7b1f8ba642 mdbx++: добавление в C++ API методов txn::rename_map(). 2024-03-30 18:01:44 +03:00
Леонид Юрьев (Leonid Yuriev)
80e9667ead mdbx++: явное приведение к int внутри constexpr mdbx::memcmp(). 2024-03-23 21:38:54 +03:00
Леонид Юрьев (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)
1db44c7914 mdbx++: перенос в public типов buffer::move_assign_alloc и buffer::copy_assign_alloc для старых стандартов C++. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
100f07e89a mdbx++: дополнительные операторы преобразования к типам C API. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
e68771df18 mdbx++: Добавление buffer_pair<> и buffer_pair_spec<>. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
0e250a4457 mdbx++: добавление поддержки std::span<>. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
be8428257d mdbx++: переделка поддержки base58 по RFC-draft. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
dd47f1bfd9 mdbx++: переход на использование по-умолчанию default_allocator вместо legacy_allocator. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
b412807fc1 mdbx++: добавление mdbx::default_buffer. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
8a6bddef44 mdbx++: поправка форматирования против бага clang-format. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
304cf25149 mdbx++: использование slice::invalid() для предотвращения незаметного неверного использования API. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
869cfb3fae mdbx++: исправление опечатки в doxygen-описании. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
0a58601cdf mdbx++: добавление pair::invalid() и взаимодействия с std::pair<>. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
355090f02e mdbx++: добавление is_xyz() для key_mode и value_mode. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
55142d8d6f mdbx++: добавление txn::commit_embark_read(). 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
b9e2f6dc09 mdbx++: добавление MDBX_CXXnn_CONSTEXPR_ENUM. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
bf21ee7bde mdbx++: добавление операторов сравнения для mdbx::pair. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
0b68980489 mdbx++: добавление cursor::scan(predicate...) и т.п. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
4999264460 mdbx++: добавление error::boolean_or_throw(exception_thunk). 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
25015c54e1 mdbx: обещанное "doubtless" API для позиционирования курсоров. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
ed59ad22c6 mdbx: добавление mdbx_cursor_on_first/last_dup() в API. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
eee3e6eb6b mdbx++: добавление compare_positions() для курсоров. 2023-12-05 15:32:18 +03:00
Леонид Юрьев (Leonid Yuriev)
225f548339 mdbx++: добавление get_/set_context для транзакций и курсоров. 2023-12-05 15:32:13 +03:00
Леонид Юрьев (Leonid Yuriev)
fb15c8ca0b mdbx++: дополнительные операторы преобразования к типам C API (backport). 2023-11-28 09:36:29 +03:00
Леонид Юрьев (Leonid Yuriev)
ae01a8e891 mdbx++: перенос в public типов buffer::move_assign_alloc и buffer::copy_assign_alloc для старых стандартов C++ (backport). 2023-11-28 09:36:29 +03:00
Леонид Юрьев (Leonid Yuriev)
1277fe965d mdbx++: переделка поддержки base58 по RFC-draft (backport). 2023-11-28 09:36:10 +03:00
Леонид Юрьев (Leonid Yuriev)
b1abcb8260 mdbx++: использование slice::invalid() для предотвращения незаметного неверного использования API (backport). 2023-11-28 01:18:24 +03:00
Леонид Юрьев (Leonid Yuriev)
7cd3dbbccb mdbx++: добавление mdbx::default_buffer (backport). 2023-11-28 01:18:24 +03:00
Леонид Юрьев (Leonid Yuriev)
352dd75ee8 mdbx++: исправление опечатки в doxygen-описании (backport). 2023-11-28 01:16:38 +03:00
Леонид Юрьев (Leonid Yuriev)
cf1541e4d7 mdbx++: добавление get/set_context для транзакций и курсоров (backport). 2023-11-28 01:16:38 +03:00
Леонид Юрьев (Leonid Yuriev)
446dbc9d6c mdbx++: добавление cursor::clone() (backport). 2023-11-28 01:13:24 +03:00