Howard Chu
3a48620f37
Use NUM_METAS instead of bare constant
9 years ago
Howard Chu
4ab86e3b39
Merge remote-tracking branch 'origin/mdb.master' into vl32bm
...
Conflicts:
libraries/liblmdb/mdb.c
9 years ago
Howard Chu
90beb5ec5a
More overflow fixes
...
And also tweaks to memory reclaim
9 years ago
Howard Chu
2fadfbb5eb
Tweak rpage memory usage
...
Double from previous, and adaptive reclaim
9 years ago
Howard Chu
69ca43c761
Fixes for overflow pages
9 years ago
Howard Chu
2e0733899f
Preliminary Win32 fixes
...
Note: doesn't safely support overflow pages yet.
9 years ago
Howard Chu
c7a786eb00
ITS#7992 cleanup
...
check for utf8_to_utf16 failures
9 years ago
Howard Chu
2a5d513286
Add env rpage cache
9 years ago
Howard Chu
7b879ca97d
handle xcursor unref'ing
9 years ago
Howard Chu
d6e3b18f1c
MDB_DEBUG should not have been defined by default
9 years ago
Hallvard Furuseth
791badd096
mdb_dbi_open(): Catch strdup failure
9 years ago
Howard Chu
5f4a399e93
Fix 64bit compares for INTEGERKEY
9 years ago
Howard Chu
505d215e91
Fix page_flush, use off_t correctly
9 years ago
Howard Chu
82728cda3d
Fix spills, nested txns
9 years ago
Howard Chu
5293e09f75
Fix debug msg formats
9 years ago
Howard Chu
32c507b268
Explicitly define MDB_VL32 in sources
9 years ago
Howard Chu
f633e2530f
Use refcounters
9 years ago
Howard Chu
6f8b48a168
set_mapsize is basically a no-op in VL32
9 years ago
Howard Chu
8b95e7d13e
ITS#8324 fix for read-only envs
9 years ago
Howard Chu
58d1fd4c73
ITS#8336 fix page_search_root assert on FreeDB
...
Let "illegal" branch pages thru on the FreeDB - the condition
is only temporary and will be fixed by the time rebalance finishes.
9 years ago
Howard Chu
6d8c442fcf
Use uint64_t not u_int64_t
9 years ago
Hallvard Furuseth
abb13ba176
ITS#8334 Fix MDB_APPENDDUP vs. rewrite(single item)
9 years ago
Howard Chu
755cb69d8b
ITS#8324 additional tweaks
...
VirtualAlloc is only needed with WRITEMAP. Regular writes
already extend the mmap implictly.
9 years ago
Howard Chu
c4e31434c7
ITS#8324 additional tweaks
...
VirtualAlloc is only needed with WRITEMAP. Regular writes
already extend the mmap implictly.
9 years ago
Howard Chu
fab89e678c
Refreshed MDB_VL32 variant
...
Should be fully compatible with 64-bit DBs
9 years ago
Sebastien Launay
4198bbde17
ITS#8330 Fix robust mutex detection for glibc 2.10 and 2.11
...
pthread_mutexattr_setrobust and pthread_mutex_consistent are provided since 2.12 not 2.10:
https://sourceware.org/git/?p=glibc.git;a=commit;h=402cd98775db1478f64c9b0dbe00664b89eb2773
https://sourceware.org/git/?p=glibc.git;a=commit;h=78ee21859939ff75ccf8bbe00499b0c462df2e2d
9 years ago
Howard Chu
45fe870c2e
ITS#8169 more Makefile tweaks
...
Use all the same vars as main OpenLDAP makefiles
9 years ago
Howard Chu
50949b4606
ITS#8169 more for prev patch
...
Missed the mkdir command
9 years ago
Howard Chu
fb5a768a77
ITS#8324 incremental DB file growth for Windows
9 years ago
Howard Chu
dbbbfa10be
ITS#8321 cleanup unused var
...
from da67af1a4b
9 years ago
Heiko Becker
6cff716f60
ITS#8169 Allow passing mandir to make install
...
The motivation for this change is my distribution moving to a multiarch
layout. While the architecture specific stuff (binaries, libraries,
etc.) is installed under /usr/${host}/{bin,lib,...} architecture-independent
data should still be installed to /usr/share/.
9 years ago
Heiko Becker
3a4fd79cbf
ITS#8168 Allow passing AR to make
...
This is helpful when the ar executable is named differently, for
example with an arch specific prefix.
9 years ago
Howard Chu
da67af1a4b
ITS#8321 fix ambiguity in cursor_put fixup
...
After delete/add of a node, other nodes may no longer be
pointing at the data they intended. This can confuse subsequent
fixups.
9 years ago
Howard Chu
50d96511f8
Cleanup C_DEL flag usage
...
Only set it if the cursor's current position was deleted
9 years ago
Howard Chu
1424aa06a6
ITS#8321 More cursor fixup
...
Based on page_touch fixup from ITS#7594 but expanded:
make sure sub-cursors agree with main cursors.
9 years ago
Howard Chu
69829288dc
ITS#8321 page_touch - don't fixup the cursor we just touched
9 years ago
Howard Chu
db02a71dd8
ITS#8321 mdb_put cursor needs tracking too
9 years ago
Howard Chu
cf8677e1b8
ITS#8321 Fix mdb_cursor_set
...
Always reinit mc_pg[0] if cursor is not C_INITIALIZED
It might have a stale value when using nested txns
9 years ago
Howard Chu
b5ce8108e8
ITS#8321 deinit empty cursors
...
Always unset C_INIT flag if the cursor's target DB has been deleted
9 years ago
Howard Chu
83258ca81e
ITS#8323 Fix nested commit
...
Must remove our spilled pages from parent's dirty list
9 years ago
Hallvard Furuseth
fae01c8df5
CURSOR_TMP_[UN]TRACK() -> WITH_CURSOR_TRACKING()
9 years ago
Orivej Desh
85d2f9804a
ITS#8320 mdb_load: fix loading data from simple text files
...
mdb_load -T was supposed to read escaped text, but 21b51cb7
"Add mdb_load"
made it read hex.
9 years ago
Orivej Desh
e29cfa0b49
ITS#8319 mdb_load: explain readline and mdb_cursor_put errors
9 years ago
Howard Chu
6fdaea4165
ITS#8321 reorganize page_split fixups
...
DUPFIXED fixups needed to occur after separator update.
MDB_RESERVE handling moved after split fixup.
9 years ago
Howard Chu
fd598083a7
ITS#8321 simplify page_split fixups
9 years ago
Howard Chu
3a31dd5a8a
ITS#8321 track temporary cursors
...
In rebalance/split operations, temporary cursors need to be visible
to propagate fixups
9 years ago
Howard Chu
828107eb63
ITS#8321 fix mdb_cursor_put
...
Ignore sub-cursors that shouldn't be fixed up
9 years ago
Howard Chu
0d5ebc508e
ITS#8321 fix mdb_cursor_shadow()
...
Set a valid txn so that cursor fixup code works on the shadows
9 years ago
Howard Chu
88ac698707
ITS#8321 fix mdb_cursor_chk()
...
It was reporting spurious errors due to uninit'd cursors
9 years ago
Howard Chu
3b9f857d8b
ITS#8321 don't skip fixups on splitting cursors
...
Adjustments can't be skipped, in recursive calls each level must
fixup their own level.
9 years ago