mirror of
				https://github.com/isar/libmdbx.git
				synced 2025-10-27 02:08:56 +08:00 
			
		
		
		
	mdbx: обновлене ChangeLog (планирование релиза).
This commit is contained in:
		
							
								
								
									
										20
									
								
								ChangeLog.md
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								ChangeLog.md
									
									
									
									
									
								
							| @@ -5,9 +5,14 @@ English version [by Google](https://gitflic-ru.translate.goog/project/erthink/li | ||||
| and [by Yandex](https://translated.turbopages.org/proxy_u/ru-en.en/https/gitflic.ru/project/erthink/libmdbx/blob?file=ChangeLog.md). | ||||
|  | ||||
|  | ||||
| ## v0.12.8 (сопровождение и подготовка к релизу) | ||||
| ## v0.12.8 "Владимир Уткин" (запланировано на 2023-10-17) | ||||
|  | ||||
| Поддержка стабильной ветки. | ||||
| Стабилизирующий выпуск с исправлением обнаруженных ошибок и устранением недочетов, | ||||
| в день 100-летия со дня рождения выдающегося советского и российского ученого и конструктора [Влади́мира Фёдоровича У́ткина](https://ru.wikipedia.org/wiki/Уткин,_Владимир_Фёдорович). | ||||
|  | ||||
| ``` | ||||
| git diff' stat: 22 commits, 570 insertions(+), 58 deletions(-) | ||||
| ``` | ||||
|  | ||||
| Благодарности: | ||||
|  | ||||
| @@ -16,16 +21,19 @@ and [by Yandex](https://translated.turbopages.org/proxy_u/ru-en.en/https/gitflic | ||||
|  | ||||
| Исправления и доработки: | ||||
|  | ||||
|  - Реализована перезапись в `mdbx_put(MDBX_CURRENT)` всех текущих мульти-значений ключа | ||||
|    при отсутствии флага `MDBX_NOOVERWRITE`. Ранее в такой ситуации возвращалась ошибка `MDBX_EMULTIVAL`. | ||||
|    В текущем понимании новое поведение более удобно и не создаёт проблем совместимости с ранее написанным кодом. | ||||
|  | ||||
|  - Устранение регресса/ошибки в пути обработки `put(MDBX_MULTIPLE)` при пакетном/оптовом | ||||
|    помещении в БД множественных значений одного ключа (aka multi-value или dupsort). | ||||
|    Проявление проблемы зависит от компилятора и опций оптимизации/кодогенерации, но с большой вероятностью возвращется | ||||
|    ошибка `MDBX_BAD_VALSIZE` (`-30781`), а в отладочных сборках срабатывает проверка `cASSERT(mc, !"Invalid key-size")`. | ||||
|    Сценарии приводящие к другим проявлениям на данный момент не известны. | ||||
|  | ||||
|  - Реализована перезапись в `mdbx_put(MDBX_CURRENT)` всех текущих мульти-значений ключа | ||||
|    при отсутствии флага `MDBX_NOOVERWRITE`. Ранее в такой ситуации возвращалась ошибка `MDBX_EMULTIVAL`. | ||||
|    В текущем понимании новое поведение более удобно и не создаёт проблем совместимости с ранее написанным кодом. | ||||
|  | ||||
|  - Добавлена возможность использовать `mdbx_cursor_get(MDBX_GET_MULTIPLE)` без предварительной установки | ||||
|    курсора, совмещая операцию пакетного получения данных с позиционированием курсора на передаваемый ключ. | ||||
|  | ||||
|  - Микрооптимизация и рефакториг `cursor_put_nochecklen()` в продолжение исправления | ||||
|    регресса/ошибки в пути обработки `put(MDBX_MULTIPLE)`. | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user