Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						30745e0621 
					 
					
						
						
							
							mdbx: refix #pragma pack for modern compilers and aligned-required arches (hotfix).  
						
						... 
						
						
						
						Fix a regression after the https://github.com/erthink/libmdbx/issues/235  
						
						
					 
					
						2021-10-13 16:13:22 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						64e6fa93fd 
					 
					
						
						
							
							mdbx: fix #pragma pack to avoid misalignment for some compilers.  
						
						... 
						
						
						
						Fixes https://github.com/erthink/libmdbx/issues/235 . 
						
						
					 
					
						2021-10-09 12:36:40 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						fa0a38c1ac 
					 
					
						
						
							
							mdbx: avoid single-page (too small) shrink threshold by default when MDBX_DEBUG > 0.  
						
						
						
						
					 
					
						2021-10-09 12:30:39 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						fe0ec8ceca 
					 
					
						
						
							
							mdbx: fix and refine mdbx_update_gc() to avoid infinite looping possibility (squashed).  
						
						
						
						
					 
					
						2021-10-09 12:29:10 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						fe7186d549 
					 
					
						
						
							
							mdbx: reflow comment (cosmetic).  
						
						
						
						
					 
					
						2021-09-30 16:38:07 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						d2cba98f70 
					 
					
						
						
							
							mdbx: always setup madvise while opening DB.  
						
						... 
						
						
						
						This partially revert 7da64b725dhttps://github.com/erthink/libmdbx/issues/231  
						
						
					 
					
						2021-08-25 14:13:07 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						99b75b5004 
					 
					
						
						
							
							mdbx: fix/model minor Coverity issues.  
						
						
						
						
					 
					
						2021-08-16 23:45:56 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						42d545e579 
					 
					
						
						
							
							mdbx: fix minor zero-length memcmp() UB.  
						
						
						
						
					 
					
						2021-08-14 17:46:34 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						b6ffec12e4 
					 
					
						
						
							
							"mdbx: ignore legacy P_DIRTY flag (0x10) for nested/sub-pages.  
						
						
						
						
					 
					
						2021-08-11 15:49:46 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						65fa0cf8ed 
					 
					
						
						
							
							mdbx++: revive encode/decode to hex/base58/base64 (squashed).  
						
						
						
						
					 
					
						2021-07-26 03:53:11 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						046dc02f73 
					 
					
						
						
							
							mdbx: make MDBX_STRINGIFYmacro public.  
						
						
						
						
					 
					
						2021-07-26 03:53:11 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						e731260056 
					 
					
						
						
							
							mdbx: fix SIGSEGV regression while copying DB with enabled audit.  
						
						
						
						
					 
					
						2021-07-26 02:24:15 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						7759e52850 
					 
					
						
						
							
							mdbx-windows: use MachineGuid of any size for bootid generation.  
						
						
						
						
					 
					
						2021-07-19 12:07:45 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						e7336e1d5e 
					 
					
						
						
							
							mdbx: add checks for unexpected LEAF2-pages.  
						
						... 
						
						
						
						The fourth case of https://github.com/erthink/libmdbx/issues/217 . 
						
						
					 
					
						2021-07-19 12:06:08 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						68aef96f0a 
					 
					
						
						
							
							mdbx-tool: minor clarify mdbx_chk' logic key/data checks.  
						
						
						
						
					 
					
						2021-07-19 12:06:08 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						0b120b8fa9 
					 
					
						
						
							
							mdbx-windows: fix bootid generation for case of change system' time.  
						
						
						
						
					 
					
						2021-07-19 12:05:55 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						28c36af67c 
					 
					
						
						
							
							mdbx: refine built-in ASAN option.  
						
						
						
						
					 
					
						2021-07-16 16:04:09 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						d67b9eaf17 
					 
					
						
						
							
							mdbx: fix ASAN-regression after  1740043678.  
						
						... 
						
						
						
						Related to https://github.com/erthink/libmdbx/issues/217  
						
						
					 
					
						2021-07-16 16:03:49 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						6034985686 
					 
					
						
						
							
							mdbx: add MDBX_ASAN_(UN)POISON_MEMORY_REGION() macros.  
						
						
						
						
					 
					
						2021-07-16 16:03:49 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						7da64b725d 
					 
					
						
						
							
							mdbx: perform madvise only for the first process opens a DB.  
						
						
						
						
					 
					
						2021-07-16 16:03:49 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						8aaf5d071b 
					 
					
						
						
							
							mdbx: fix pagecheck().  
						
						... 
						
						
						
						Added a check that the data of the BIGDATA node (containing the target page number) is located within the boundaries of the page being checked.
The third case of https://github.com/erthink/libmdbx/issues/217 . 
						
						
					 
					
						2021-07-16 15:55:18 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						b6233ae2e5 
					 
					
						
						
							
							mdbx-tools: minor fix/unify error counters.  
						
						
						
						
					 
					
						2021-07-14 10:29:54 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						fe5f008d39 
					 
					
						
						
							
							mdbx-tools: skip iteration & checking records if corresponding tree is corrupted.  
						
						... 
						
						
						
						Hope final for https://github.com/erthink/libmdbx/issues/217  
						
						
					 
					
						2021-07-14 03:59:56 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						c8743cb9c4 
					 
					
						
						
							
							mdbx: fix null-deref while override invalid meta-pages.  
						
						... 
						
						
						
						Related to https://github.com/erthink/libmdbx/issues/217  
						
						
					 
					
						2021-07-14 03:59:52 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						4de2dcebb5 
					 
					
						
						
							
							mdbx:  increase the MDBX_READERS_LIMIT to 32767.  
						
						... 
						
						
						
						Fixes https://github.com/erthink/libmdbx/issues/219 . 
						
						
					 
					
						2021-07-11 02:44:19 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						678a80dd19 
					 
					
						
						
							
							mdbx: fix hang/shutdown on big-endian platforms without __cxa_thread_atexit().  
						
						... 
						
						
						
						Change-Id: I1bf706abaaf42d5b40751d85ed7c7a83d02acaf5 
						
						
					 
					
						2021-07-11 02:25:39 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						c18bf4f898 
					 
					
						
						
							
							mdbx: minor clarify mdbx_mapresize().  
						
						
						
						
					 
					
						2021-07-11 02:25:39 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						728e7f92b2 
					 
					
						
						
							
							mdbx: minor fix mdbx_mresize() to preserve result code for read-only cases.  
						
						
						
						
					 
					
						2021-07-11 02:25:39 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						1740043678 
					 
					
						
						
							
							mdbx: minimize the size of poisoned/unpoisoned regions to avoid ASAN hangs.  
						
						... 
						
						
						
						More for second case of https://github.com/erthink/libmdbx/issues/217  
						
						
					 
					
						2021-07-11 02:25:26 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						891d68838a 
					 
					
						
						
							
							mdbx: return MDBX_TOO_LARGE under Valgrind/ASAN if being opened DB is 100 larger than RAM.  
						
						... 
						
						
						
						More for second case of https://github.com/erthink/libmdbx/issues/217  
						
						
					 
					
						2021-07-11 02:25:07 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						108398c213 
					 
					
						
						
							
							mdbx: refine rollback while opening weak/invalid DB.  
						
						... 
						
						
						
						More for https://github.com/erthink/libmdbx/issues/217  
						
						
					 
					
						2021-07-11 02:24:51 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						8bdee27248 
					 
					
						
						
							
							mdbx: create/refactoring override_meta().  
						
						
						
						
					 
					
						2021-07-11 02:24:51 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						00c6dc9788 
					 
					
						
						
							
							mdbx: re-verify head and steady meta-pages while opening db by the first process.  
						
						... 
						
						
						
						Basic fix for https://github.com/erthink/libmdbx/issues/217  
						
						
					 
					
						2021-07-11 02:24:06 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						fb67682a79 
					 
					
						
						
							
							mdbx: refine mdbx_validate_meta().  
						
						
						
						
					 
					
						2021-07-10 17:24:26 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						5ed50a4739 
					 
					
						
						
							
							mdbx: remove filesize arg from header/meta read functions (refactoring).  
						
						
						
						
					 
					
						2021-07-10 16:10:30 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						c30c3def8b 
					 
					
						
						
							
							mdbx: the filesize field of mdbx_mmap_t now is not specific for Windows.  
						
						
						
						
					 
					
						2021-07-10 16:10:30 +03:00 
						 
				 
			
				
					
						
							
							
								Леонид Юрьев (Leonid Yuriev) 
							
						 
					 
					
						
						
							
						
						2f74f405ae 
					 
					
						
						
							
							mdbx: avoid returning MDBX_TXN_FULL error when possible.  
						
						
						
						
					 
					
						2021-07-09 18:29:31 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						39c5e66ed1 
					 
					
						
						
							
							mdbx: fix safe64_reset() for platforms without atomic 64-bit compare-and-swap.  
						
						
						
						
					 
					
						2021-07-09 17:44:27 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						bd2bb51f0f 
					 
					
						
						
							
							mdbx++: rework buffer::silo to avoid use std::string.  
						
						
						
						
					 
					
						2021-07-06 13:45:26 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						cf5f31c577 
					 
					
						
						
							
							mdbx: make __cold attribute first (cosmetic).  
						
						
						
						
					 
					
						2021-07-03 01:51:04 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						fa49e5a57b 
					 
					
						
						
							
							mdbx++: rename slice::from/to_FOO_bytes() to `slice::envisage_from/to_FOO_length()'.  
						
						
						
						
					 
					
						2021-07-02 21:20:04 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						5d4281fbbe 
					 
					
						
						
							
							mdbx: minor fix spelling.  
						
						
						
						
					 
					
						2021-06-26 18:54:00 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						a5e10b4ea1 
					 
					
						
						
							
							mdbx: minor refine mdbx_cursor_eof().  
						
						
						
						
					 
					
						2021-06-18 01:17:48 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						b8e621cb2f 
					 
					
						
						
							
							mdbx: mdbx: avoid log a warning about empty header during DB creation.  
						
						... 
						
						
						
						Resolve https://github.com/erthink/libmdbx/issues/205 . 
						
						
					 
					
						2021-06-18 01:09:26 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						5db855d728 
					 
					
						
						
							
							mdbx: fix false-negative mdbx_cursor_eof() result.  
						
						... 
						
						
						
						Fixes https://github.com/erthink/libmdbx/issues/207 . 
						
						
					 
					
						2021-06-17 21:44:24 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						d7c06b1337 
					 
					
						
						
							
							mdbx: partial fix for recursive SRW-lock with MDBX_NOTLS on Windows.  
						
						... 
						
						
						
						Here are some changes to avoid recursive acquisition of SRW-lock,
which is still in use:
 - Read transactions don't acquire the shared SRW-lock with `MDBX_NOTLS.
 - Memory-mapping of DB is always kept while DB opened,
   therefore following limitations are:
 - DB file can't be shrinked while it used,
   including auto-shrink due to auto-compactification with corresponding geometry settings.
 - The upper limit of DB size can't be changed while DB is used.
 - The DB can grow within the upper size limit defined while opening by a first process,
   but this does not work under Wine since there is no `NtExtendSection()` function.
Partially fix https://github.com/erthink/libmdbx/issues/203  
						
						
					 
					
						2021-06-10 13:42:30 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						0cd1eac6a8 
					 
					
						
						
							
							mdbx: don't check other meta pages if one is specified for verification/recovery.  
						
						... 
						
						
						
						Fixes https://github.com/erthink/libmdbx/issues/202  
						
						
					 
					
						2021-06-08 20:27:18 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						f951f246b8 
					 
					
						
						
							
							mdbx: allow to predefine/override MDBX_BUILD_TIMESTAMP for builds reproducibility.  
						
						... 
						
						
						
						Resolve https://github.com/erthink/libmdbx/issues/201  
						
						
					 
					
						2021-06-02 14:50:22 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						ea1fcc2246 
					 
					
						
						
							
							mdbx: fix insignificantly Coverity warnings.  
						
						
						
						
					 
					
						2021-05-28 00:54:11 +03:00 
						 
				 
			
				
					
						
							
							
								Leonid Yuriev 
							
						 
					 
					
						
						
							
						
						8915db5f83 
					 
					
						
						
							
							mdbx-tools: cleanup MDBX_NOSUBDIR (needless).  
						
						
						
						
					 
					
						2021-05-28 00:36:24 +03:00