Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						ce74fae036 
					 
					
						
						
							
							mdbx: рефакторинг и выделение env_open().  
						
						
						
						
					 
					
						2023-11-12 01:49:53 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						54efb8bd81 
					 
					
						
						
							
							mdbx: не считаем ошибки ipc-unlock критичными в случае смены pid.  
						
						
						
						
					 
					
						2023-11-12 01:49:53 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						a3e2300f58 
					 
					
						
						
							
							mdbx: возможность вызова osal_lck_destroy() в дочернем процессе после fork().  
						
						
						
						
					 
					
						2023-11-12 01:49:53 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						7ad54f54b4 
					 
					
						
						
							
							mdbx: объединение lck-списка и rthc-таблицы для упрощения (де)регистрации TLS-деструкторов.  
						
						
						
						
					 
					
						2023-11-12 01:49:53 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						eddade7b99 
					 
					
						
						
							
							mdbx: корректировка префиксов имён osal-ipc функций.  
						
						
						
						
					 
					
						2023-11-12 01:00:41 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						97418d5c9c 
					 
					
						
						
							
							mdbx: рефакторинг env_handle_pathname() для одной точки выделения/освобождения памяти.  
						
						
						
						
					 
					
						2023-11-12 01:00:41 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						1b2f5f25d4 
					 
					
						
						
							
							mdbx: рефакторинг и вынос txn_abort() без кода входящих пероверок.  
						
						
						
						
					 
					
						2023-11-12 01:00:41 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						2fe01eee89 
					 
					
						
						
							
							mdbx: проверка pid только для запроса активной env.  
						
						
						
						
					 
					
						2023-11-12 01:00:41 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						6477e6c5de 
					 
					
						
						
							
							mdbx: исправление авто-установки MDBX_ENV_CHECKPID для случая MDBX_ENABLE_MADVISE=0.  
						
						
						
						
					 
					
						2023-11-12 01:00:41 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						dea6570fc1 
					 
					
						
						
							
							mdbx: доработка coherency_check() для случая плохих номеров корневых страниц.  
						
						
						
						
					 
					
						2023-11-11 12:29:15 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						9a6f8a1bf8 
					 
					
						
						
							
							mdbx-test: увеличение tail-log до 3333 для CI.  
						
						
						
						
					 
					
						2023-11-11 12:29:13 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						24d5b26bc5 
					 
					
						
						
							
							mdbx-make: переименование целей.  
						
						
						
						
					 
					
						2023-11-11 12:29:13 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						0916d24321 
					 
					
						
						
							
							mdbx: использование опции ENABLE_MEMCHECK вместо ENABLE_VALGRIND и MDBX_USE_VALGRIND.  
						
						
						
						
					 
					
						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) 
							
						 
					 
					
						
						
							
						
						c9c02dddfb 
					 
					
						
						
							
							mdbx: добавление mdbx_dbi_rename() в API.  
						
						
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						903d964f4d 
					 
					
						
						
							
							mdbx: интенсивное использование __restrict, в том числе при определении элементов структур.  
						
						
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						96504bf338 
					 
					
						
						
							
							mdbx: отложенное освобождение имен связанных c dbi-хендлами и добавление опции MDBX_ENABLE_DBI_LOCKFREE.  
						
						... 
						
						
						
						Отложенное освобождение позволяет реализовать безопасное выполнение
fastpath/lockfree при повторном открытии из других потоков/транзакцйий
уже открытых subDB, что и происходит при активации добавленной опции
сборки `MDBX_ENABLE_DBI_LOCKFREE`. 
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						3622669a9f 
					 
					
						
						
							
							mdbx: проверка db-флагов и ре-инициализация MainDB при изменении флагов другим процессом.  
						
						
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						e6af7d7c53 
					 
					
						
						
							
							mdbx: переработка инициализации, проверки и импорта dbi-хендлов в транзакциях.  
						
						... 
						
						
						
						Ранее инициализация в транзакциях структур данных, связанных с
dbi-хендлами и subDb, выполнялась непосредственно при запуске
транзакций. Что в сценариях с большим кол-вом dbi-дексприторов (например
libfpta) порождало заметные накладные расходы, которые расли линейно от
общего кол-ва открытых subDb, а не от реально используемых в транзакции.
При использовании одной-двух сотен хендлов, при старте каждой транзакции
могли копироваться и/или обнуляться десятки килобайт. Теперь этот
недостаток устранен.
Изменена схема инициализации, валидации и импорта хендлов открытых после
старта транзакции:
1) Инициализация теперь выполняется отложенна, а при старте транзации
   обнуляется только массив с однобайтовыми статустами dbi-хендлов.
   При этом доступнва опция сборки `MDBX_ENABLE_DBI_SPARSE`, при активации
   которой используется битовая карты, что снижает объем инициализации
   при старте транзакции в 8 раз (CHAR_BIT).
2) Переработана валидация dbi-хендлов на входах API, с уменьшением кол-ва
   проверок и ветвлений до теоретического минимума.
3) Переработ импорт dbi-хендов открытых после старта транзакци, теперь
   при этом не захватывается мьютекс. 
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						796e56b9b9 
					 
					
						
						
							
							mdbx: добавление кода системной ошибки MDBX_EDEADLK.  
						
						
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						4b79d46d38 
					 
					
						
						
							
							mdbx: удаление поля mt_dbxs из транзакции.  
						
						... 
						
						
						
						Явного выигрыша или проигрыша в производительности тут нет. Но теперь
меньше алиасинга указателей и чуть меньше полей в транзакциях. 
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						f317170706 
					 
					
						
						
							
							mdbx: переименование внутренних полей и макросов для улучшения читаемости кода.  
						
						
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						81f386f831 
					 
					
						
						
							
							mdbx: перемещение полей внутри MDBX_txn и MDBX_env.  
						
						... 
						
						
						
						В текущем понимании так префетчер ЦПУ может быть чуть более эффективным
и чуть меньше зазоров для выравнивания. 
						
						
					 
					
						2023-11-11 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						54920cd07b 
					 
					
						
						
							
							mdbx: исправление assert-проверок внутри osal_txn_lock().  
						
						
						
						
					 
					
						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) 
							
						 
					 
					
						
						
							
						
						ad4d00677b 
					 
					
						
						
							
							mdbx: PTHREAD_MUTEX_ERRORCHECK при MDBX_DEBUG > 0.  
						
						
						
						
					 
					
						2023-10-29 18:44:54 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						1943db7d41 
					 
					
						
						
							
							mdbx: merge branch master into devel.  
						
						
						
						
					 
					
						2023-10-29 18:23:49 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						ed8c7ead4e 
					 
					
						
						
							
							mdbx: ликвидация ошибочной зависимости от удаленной опции MDBX_ENABLE_PREFAULT.  
						
						
						
						
					 
					
						2023-10-29 12:20:54 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						5ebc2c523d 
					 
					
						
						
							
							mdbx: обновление ChangeLog.  
						
						
						
						
					 
					
						2023-10-23 20:35:55 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						24f08aed28 
					 
					
						
						
							
							mdbx-doc: обновление конфигурации Doxygen.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						c254c728d2 
					 
					
						
						
							
							mdbx: костыль для ложно-положительного предупреждения Coverity.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						04511a7a99 
					 
					
						
						
							
							mdbx: использование const MDBX_txn где это возможно в API.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						0e4c6d61a4 
					 
					
						
						
							
							mdbx-tools: несущественный рефакторинг mdbx_load.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						4d3f7e1edc 
					 
					
						
						
							
							mdbx: добавление mdbx_txn_release_all_cursors() в API.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						d28a397b2d 
					 
					
						
						
							
							mdbx: добавление mdbx_cursor_unbind() в API.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						5f274eb4c6 
					 
					
						
						
							
							mdbx: вывод информации из mdbx_env_chk() о boot-id в каждой мета-странице.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						a67b9b9729 
					 
					
						
						
							
							mdbx: доработка env_info_snap().  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						224f26813e 
					 
					
						
						
							
							mdbx: возвращение MDBX_TXN_INVALID (INT32_MIN) из mdbx_txn_flags() при передаче невалидной транзакции.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						fc1685a178 
					 
					
						
						
							
							mdbx: STATIC_ASSERT() для MDBX_TXN_RDONLY_PREPARE.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						cdbcf54af1 
					 
					
						
						
							
							mdbx-tests: добавление --read-var-info=yes для Valgrind.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						786da2b089 
					 
					
						
						
							
							mdbx-tools: вывод информации об уровне детализации/verbosity.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						253a56206b 
					 
					
						
						
							
							mdbx: переработка и перенос функционала утилиты mdbx_chk внутрь библиотеки.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						f0d523c507 
					 
					
						
						
							
							mdbx: дополнение API функциями lock/unlock/upgrade/downgrade основной блокировки.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						dd9fc963d2 
					 
					
						
						
							
							mdbx: изменение и расширение API функционалом проверки целостности структуры БД.  
						
						
						
						
					 
					
						2023-10-23 20:25:03 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						e9ad618b58 
					 
					
						
						
							
							mdbx: начало ветки 0.13, с новым функционалом и изменением API.  
						
						... 
						
						
						
						Планируется очистка от функций и возможностей ранее объявленных
устаревшими. В частности, будет удалена поддержка пользовательских
функций сравнения, которые были обьявлены устаревшими начиная с версии
0.9, более 33 месяцев назад. 
						
						
					 
					
						2023-10-23 20:24:59 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						42ef1dcd39 
					 
					
						
						
							
							mdbx: merge branch master into devel.  
						
						
						
						
					 
					
						2023-10-23 19:49:50 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						93429d3a23 
					 
					
						
						
							
							mdbx: merge branch master into stable.  
						
						
						
						
					 
					
						2023-10-23 18:15:26 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						080875cd6d 
					 
					
						
						
							
							mdbx: Обновление ChangeLog.  
						
						
						
						
					 
					
						2023-10-23 18:13:35 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						753cfd00eb 
					 
					
						
						
							
							mdbx: обновление патча для старых версий buildroot.  
						
						
						
						
					 
					
						2023-10-23 18:12:21 +03:00