Леонид Юрьев (Leonid Yuriev)
7e772114bc
mdbx: рефакторинг читающих транзакций в вычленением txn_ro_start()
, txn_ro_seize()
, txn_ro_slot()
.
2025-01-15 00:50:36 +03:00
Леонид Юрьев (Leonid Yuriev)
0accf98ff7
mdbx: добавление опции сборки MDBX_ENABLE_NON_READONLY_EXPORT
и логирование соответствующих ситуаций.
...
Закрывает [запрос](https://gitflic.ru/project/erthink/libmdbx/issue/16 ).
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
e4054b56c3
mdbx: использование при наличии EREMOTEIO
вместо ENOTBLK
в качестве MDBX_EREMOTE
.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
950db52fe8
mdbx: выделение basal/ro/nested txn-функций в отдельные файлы (без изменений кода).
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
380385c1db
mdbx: упрощение выхода по not-found пути из cursor_seek()
.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
10e7e5c899
mdbx: рефакторинг mdbx_txn_commit_ex()
5/5 (вычленение txn_basal_end()
).
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
6d92a778a5
mdbx: оформление опции сборки MDBX_NOSUCCESS_PURE_COMMIT
(выключено по умолчанию).
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
c60f6afe5f
mdbx: упрощение/выпрямление/рефакторинг txn_end()
и затронутых зависимостей.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
a5bb555db3
mdbx: рефакторинг mdbx_txn_commit_ex()
4/5 (вычленение txn_basal_commit()
).
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
b9b784c18e
mdbx: рефакторинг mdbx_txn_commit_ex()
3/5 (вычленение txn_nested_join()
).
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
c6cd482ea0
mdbx: рефакторинг mdbx_txn_commit_ex()
2/5 (struct commit_timestamp
, latency_init/gcprof/done()
).
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
2b9401e372
mdbx: рефакторинг mdbx_txn_commit_ex()
1/5 (переменование локальных timestamp-переменных).
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
6fe7baa1b8
mdbx: упрощение mdbx_txn_break()
.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
1e5fef2c76
mdbx: рефакторинг txn-api с выносом отдельных txn-функций.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
0a4156fe6f
mdbx: перенос check_env()
из txn_end()
в функции txn-api.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
a89d418c91
mdbx: рефакторинг mdbx_txn_straggler()
с добавлением проверки env
.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
585ccdf716
mdbx: изменение TXN_END_NAMES
.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
81e2623a54
mdbx: рефакторинг затенения и завершения курсоров, с удалением TXN_END_EOTDONE
и добавлением txn_may_have_cursors
.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
b681b59434
mdbx: рефакторинг/вычленение txn_basal_create/destroy()
.
2025-01-14 13:26:54 +03:00
Леонид Юрьев (Leonid Yuriev)
67460dd0fd
mdbx: обновление патча для старых версий buildroot.
2025-01-14 13:04:25 +03:00
Леонид Юрьев (Leonid Yuriev)
3a1ac35009
mdbx: дополнение ChangeLog.
2025-01-13 16:55:41 +03:00
Леонид Юрьев (Leonid Yuriev)
3c60e1e94c
mdbx-tests: переделка seed/salt ГПСЧ для более удобного контроля и воспроизведения тестов.
2025-01-13 16:55:41 +03:00
Леонид Юрьев (Leonid Yuriev)
a994a9bbcc
mdbx: использование MDBX_GET_BOTH
для проверки наличия добавляемого значения в таблице.
2025-01-13 16:55:41 +03:00
Леонид Юрьев (Leonid Yuriev)
84e2c70b98
mdbx: начало разработки ветки 0.14
.
v0.14.0
2025-01-13 16:54:52 +03:00
Леонид Юрьев (Leonid Yuriev)
bd45668fee
mdbx: merge branch master
into stable
.
2025-01-12 22:08:00 +03:00
Леонид Юрьев (Leonid Yuriev)
92e2b6287e
mdbx: выпуск 0.13.3 "Королёв" (Korolev).
...
Поддерживающий выпуск с исправлением обнаруженных ошибок и устранением недочетов
в день рождения и в память об [Серге́е Па́вловиче Королёве](https://ru.wikipedia.org/wiki/Королёв,_Сергей_Павлович ),
советском учёном и Главном конструкторе ракетно-космических систем.
За перечнем доработок и изменений обращайтесь к [ChangeLog](https://libmdbx.dqdkfa.ru/md__change_log.html ).
git diff' stat: 67 files changed, 3514 insertions(+), 3004 deletions(-)
Signed-off-by: Леонид Юрьев (Leonid Yuriev) <leo@yuriev.ru>
v0.13.3
2025-01-12 16:27:02 +03:00
Леонид Юрьев (Leonid Yuriev)
c751977bf7
mdbx-tools: добавление логирования ошибок/предупреждений по все утилиты.
2025-01-12 14:38:20 +03:00
Леонид Юрьев (Leonid Yuriev)
e5fe279632
mdbx: логирование ошибок при открытии lck-файла.
2025-01-12 14:30:39 +03:00
Леонид Юрьев (Leonid Yuriev)
8408a2eed3
mdbx: добавление разделителя между MDBX_BUILD_FLAGS_CONFIG
и MDBX_BUILD_FLAGS
(косметика).
2025-01-12 11:54:24 +03:00
Леонид Юрьев (Leonid Yuriev)
0297136648
mdbx: улучшение авто-переключения в режим without-lck при открытии БД на read-only-носителе.
2025-01-12 02:58:59 +03:00
Леонид Юрьев (Leonid Yuriev)
92a49c7c8c
mdbx: устранение риска потери/перезаписи errno
при неожиданных ошибках в close()
.
2025-01-12 02:58:59 +03:00
Леонид Юрьев (Leonid Yuriev)
b75e16f4f8
mdbx: устранение null-dereference регресса в режиме readonly-without-lck.
2025-01-12 02:58:59 +03:00
Леонид Юрьев (Leonid Yuriev)
dcc8708d6a
mdbx: дополнение ChangeLog (запланирован выпуск v0.13.3).
2025-01-11 02:35:48 +03:00
Леонид Юрьев (Leonid Yuriev)
9c8f90b713
mdbx: доработка эвристик для выбора/подстройки default-значений в mdbx_env_set_geometry()
.
2025-01-11 02:30:53 +03:00
Леонид Юрьев (Leonid Yuriev)
820bd45818
mdbx++: использование только default
-значений для геометрии по-умолчанию вместо min/max.
2025-01-10 23:50:05 +03:00
Леонид Юрьев (Leonid Yuriev)
3a02ca88ea
mdbx-make: добавление цели ctest
и её привязка к make check
.
2025-01-10 23:50:05 +03:00
Леонид Юрьев (Leonid Yuriev)
16997a88b0
mdbx-tests: уменьшение кол-ва итераций в crunched-delete.
2025-01-10 23:50:05 +03:00
Леонид Юрьев (Leonid Yuriev)
b00e8ea13f
mdbx: использование txl_contain()
в audit()
.
2025-01-08 13:29:10 +03:00
Леонид Юрьев (Leonid Yuriev)
faa9753d2d
mdbx: перемещение и корректировка комментария размечающего внутренние поля пишущей транзакции.
2025-01-05 14:44:00 +03:00
Леонид Юрьев (Leonid Yuriev)
5ba257fafc
mdbx: добавление упущенного static
для txl_reserve()
.
2025-01-05 14:44:00 +03:00
Леонид Юрьев (Leonid Yuriev)
bad6e3c2e2
mdbx: очистка флажка ENV_TXKEY
внутри rthc_dtor()
.
...
На штатную работу это никак не влияет, но немного облегчит разбор
ситуаций когда глобальный конструктор не вызывается, либо делается
попытка вызвать его дважды (из-за ошибок rtc/libc, etc).
2025-01-05 14:40:56 +03:00
Леонид Юрьев (Leonid Yuriev)
5350ed8a3b
mdbx: дополнение ChangeLog.
2025-01-04 11:54:11 +03:00
Леонид Юрьев (Leonid Yuriev)
fef7c25a65
mdbx-make: mkdir -p
для повторной сборки без очистки.
2025-01-04 11:54:07 +03:00
Леонид Юрьев (Leonid Yuriev)
10ac9a9c50
mdbx-tests: добавление extra/txn
.
2025-01-04 04:01:41 +03:00
Леонид Юрьев (Leonid Yuriev)
dc98f06d2c
mdbx: логирование и возврат MDBX_INCOMPATIBLE
при попытке запуска вложенных транзакций в режиме MDBX_WRITEMAP
.
2025-01-03 22:14:00 +03:00
Леонид Юрьев (Leonid Yuriev)
0a364aefbb
mdbx++: добавление txn::make_broken()
.
2025-01-03 22:14:00 +03:00
Леонид Юрьев (Leonid Yuriev)
1bf008ac16
mdbx: доработка контроля потока-владельца транзакции.
...
1. Теперь допускается commit/abort вложенных транзакций из любого треда в режиме MDBX_NOSTICKYTHREADS.
2. Более наглядные/явные проверки без зависимости от больше/меньше.
Одна проверка внутри check_txn() для всех основных случаев (bad_bits != 0) и две проверки для abort/reset/break (bad_bits == 0).
+-------------------------------------------------------------------------------------------------------+
| Три анализируемых txn->flags | Проверка txn->owner == osal_thread_self() |
+-----------------+------------+--------------+-----------------------+---------------------------------+
| NOSTICKYTHREADS | TXN_RDONLY | TXN_FINISHED | usual (bad_bits != 0) | abort/reset/break (bad_bits==0) |
| - | - | - | + | + |
| - | - | + | + | + |
| - | + | - | + | + |
| - | + | + | + | - |
| + | - | - | - | - |
| + | - | + | + | + |
| + | + | - | - | - |
| + | + | + | + | - |
+-------------------------------------------------------------------------------------------------------+
2025-01-03 22:12:17 +03:00
Леонид Юрьев (Leonid Yuriev)
1e4e2eb3c8
mdbx-doc: исправление опечатки в комментарии.
2024-12-29 08:42:48 +03:00
Леонид Юрьев (Leonid Yuriev)
63dba2876d
mdbx-doc: корректировка описания значения по-умолчанию MDBX_opt_txn_dp_limit
.
2024-12-28 22:56:17 +03:00
Леонид Юрьев (Leonid Yuriev)
5ff5080935
mdbx: дополнение ChangeLog.
2024-12-28 09:52:19 +03:00