Commit Graph

64 Commits

Author SHA1 Message Date
Kris Zyp ade464a5a0
ITS#9385 fix using MDB_NOSUBDIR with nonexistent file 2022-06-03 16:46:59 +01:00
Howard Chu 493577a6cd
Silence spurious fallthru warning 2022-06-03 16:46:18 +01:00
Howard Chu b46a60e390
Fix rawpart flag collision 2022-06-03 16:46:04 +01:00
Howard Chu 4e7586c9e4
More RAWPART support
Use mmap to read and initialize the meta pages, raw device
may not support read/write syscalls.
2022-06-03 16:45:49 +01:00
Howard Chu 747f5d3594
Preliminary raw partition support
Autodetects that a block device is being used.
2022-06-03 16:45:39 +01:00
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
Howard Chu e907305c6c
ITS#9068 fix backslash escaping
mdb_load wasn't properly inserting escaped backslashes into the data.
mdb_dump wasn't escaping backslashes when generating printable output.
2019-08-26 17:59:13 +01:00
Noel O'Donnell 757b789c30 Define _WANT_SEMUN for FreeBSD to ensure `union semun` is defined
Build was failing on GhostBSD (FreeBSD-13.0) because `union semun` is switched off by default. Defining _WANT_SEMUN switches it on.
2019-07-27 20:39:50 +01: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
binaryFate 1f2930ce0b Update 2019 copyright 2019-03-05 22:05:34 +01: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
thomasvaughan bcda7adcd4 NetBSD support 2018-09-11 14:32:33 +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
hyc 9705032618 ITS#8831 move flag init into readhdr
Avoid stomping on flags from 1st readhdr invocation
2018-05-08 06:13:21 +01:00
stoffu 2ab66ff1d4
liblmdb: install lmdb library for wallet2_api usage 2018-03-16 10:32:57 +00: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
Riccardo Spagni 666a76652b
Merge pull request #3187
851bd057 call _exit instead of abort in release mode (moneromooo-monero)
2018-02-16 14:20:31 +01: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
xmr-eric 18216f19dd Update 2018 copyright 2018-01-26 10:03:20 -05:00
moneromooo-monero 776b44f17b
Add misc hardening flags to the cmake machinery
See https://wiki.debian.org/Hardening#User_Space
2017-12-31 14:26:12 +00:00
Howard Chu 8198f031f3
Add mdb_drop tool 2017-11-19 19:48:01 +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 2540d162be
Add -a append option to mdb_load
To allow reloading of custom-sorted DBs from mdb_dump
2017-09-20 18:50:38 +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
Riccardo Spagni c3599fa7b9
update copyright year, fix occasional lack of newline at line end 2017-02-21 19:38:18 +02: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
MoroccanMalinois 80abc3bc4a Build wallet with Android NDK 2017-01-05 01:11:05 +00:00
redfish e1c7af35d4 cmake: transitive deps and remove deprecated LINK_*
Keep the immediate direct deps at the library that depends on them,
declare deps as PUBLIC so that targets that link against that library
get the library's deps as transitive deps.

Break dep cycle between blockchain_db <-> crytonote_core.
No code refactoring, just hide cycle from cmake so that
it doesn't complain (cycles are allowed only between
static libs, not shared libs).

This is in preparation for supproting BUILD_SHARED_LIBS cmake
built-in option for building internal libs as shared.
2016-09-18 02:56:26 -04:00
Howard Chu 7442dd084a More for Issue #855
Plug rpage leak in cursor_set
2016-08-11 21:04:36 +01:00
Howard Chu d6f5d543a5 Fix Issue #855
Use the same size dirty list for both 64 and 32 bit.
2016-06-07 23:38:47 +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 8860b7497f MDB_VL32 - increase max write txn size 2016-02-17 20:41:34 +00: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 7e65cc0aba MDB_VL32 Fix off-by-one in mdb_midl_shrink 2016-01-28 04:15:45 +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
Riccardo Spagni de03926850
updated copyright year 2015-12-31 08:39:56 +02: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