Commit graph

27 commits

Author SHA1 Message Date
Howard Chu
5fe22ac766
ITS#9496 fix mdb_env_open bug from #8704
Broken in 9c6eb75c65
2021-04-09 14:21:15 +01:00
Howard Chu
ab5f0ec37a
ITS#9500 fix regression from ITS#8662
mdb_load -a patch broke overwriting with MDB_CURRENT
2021-03-23 20:51:19 +00:00
Kris Zyp
935bfaa913
ITS#9007 don't free loose writemap pages
Broken in ITS#8756
2021-02-01 16:09:08 +00:00
moneromooo-monero
b6420e12a9
lmdb: catch non-LMDB negative errors before strerror
That should hopefully shut coverity up
2019-04-14 09:19:04 +00:00
Howard Chu
2a94ec22aa
ITS#8969 tweak mdb_page_split
Bump up number of keys for which we use fine-grained splitpoint search
2019-01-30 23:45:48 +00:00
Howard Chu
efec3ed235
Resync to upstream mdb.master 2019-01-17 19:49:26 +00:00
hyc
18cd6837b6 Fix mdb_load append option
Use MDB_CURRENT to avoid seeking to new key when appending DUPs.
Reinit cursor on new batch, if appending DUPs.
2018-05-08 06:29:13 +01:00
Howard Chu
b372ec4375
ITS#8324 More for Win32 NTDLL junk
Use GetProcAddress at runtime, avoid buildtime NTDLL link issues
2018-02-18 21:56:55 +00:00
moneromooo-monero
851bd057ec
call _exit instead of abort in release mode
Avoids cores being created, as they're nowadays often piped
to some call home system
2018-02-01 13:32:46 +00:00
Howard Chu
0aa4cc8028
ITS#8339 Solaris 10/11 robust mutex fixes
Check for PTHREAD_MUTEX_ROBUST_NP definition (this doesn't work
on Linux/glibc because they used an enum). Zero out mutex before
initing.
2017-10-10 19:04:11 +01:00
Howard Chu
edda20146e
ITS#8728 fix MDB_VL32 freeing overflow page
Fix #2420
2017-09-09 15:10:23 +01:00
Howard Chu
9c6eb75c65
ITS#8704 add MDB_PREVSNAPSHOT flag to mdb_env_open
used to open the previous snapshot, in case the latest one
is corrupted
2017-08-12 12:21:25 +01:00
hyc
6c72d6a058 Fix Android recognition
The official macro is __ANDROID__; ANDROID may or may not be defined.
2017-04-12 23:55:29 +01:00
Howard Chu
27c3a0ea9f
ITS#8582 keep mutex at end of struct
since it's variable size on Linux/glibc
2017-02-07 15:12:05 +00:00
Howard Chu
edfd7f6e07
Workaround VL32 cursor refcounting miscount
Don't try to deref cursor page if txn's pagelist is empty
2017-01-31 10:38:12 +00:00
Howard Chu
7442dd084a More for Issue #855
Plug rpage leak in cursor_set
2016-08-11 21:04:36 +01:00
Howard Chu
66b1e13aa7 mdb_drop optimization
If we know there are no sub-DBs and no overflow pages, skip leaf scan.
2016-04-09 20:44:05 +01:00
Howard Chu
6225716f3c More outputs consolidation
Also bumped DB VERSION to 1
Another significant speedup and space savings:
Get rid of global_output_indices, remove indirection from output to keys

This is the change warptangent described on irc but never got to finish.
2016-04-05 20:55:12 +01:00
Howard Chu
31e4e8c3a3 Resync with master 2016-02-16 23:38:04 +00:00
Howard Chu
f98fe467e9 MDB_VL32 change overflow page scan
Just check the requested page, don't worry about any other pages
2016-01-28 13:59:02 +00:00
Howard Chu
222e30ec97 MDB_VL32 Fix another 32bit overflow 2016-01-27 14:14:27 +00:00
Howard Chu
3ca6e853f6 Tweak mdb_strerror msg buffer 2016-01-27 14:14:11 +00:00
Howard Chu
78ad970a2c MDB_VL32 Fix d2a5f72f73
VirtualAlloc is not for MDB_VL32
2016-01-27 14:14:02 +00:00
Howard Chu
1cff3974d8 WIN64 needs off_t redefined too 2016-01-20 01:26:26 +00:00
Howard Chu
d2a5f72f73 Fix --db-sync-mode on Windows64
only "fastest" mode was working, others would SEGV.
2016-01-16 16:11:11 +00:00
Howard Chu
b773e66877 MDB_VL32 - resync with master
WIN32 - close file mapping handle in env_close
cursor_unref - ignore cursor with empty stack
2015-12-28 20:46:48 +00:00
Howard Chu
ba4e217c90 Update liblmdb, unify 32/64 sources 2015-12-25 08:56:03 +00:00
Renamed from external/db_drivers/liblmdb32/mdb.c (Browse further)