Howard Chu
9227f66673
ITS#7952 .gitignore mdb_dump/load
2014-12-01 20:15:35 +01:00
Howard Chu
20ad21dcc4
Don't use -fPIC for static lib
2014-12-01 20:15:35 +01:00
Howard Chu
df9da7c7be
Must do dlist_free before releasing Wmutex
2014-12-01 20:15:35 +01:00
Howard Chu
9eede0b103
Free write mutex earlier in txn_reset0
2014-12-01 20:15:30 +01:00
Mark Reynolds
7a7d941943
ITS#7979 MozNSS fix for TLS_PROTOCOL_MIN
...
Fix NSS code to check for TLS_PROCOTOL_MIN, and then set the SSL
version range(min and max). Also updated SSL version string map
table to support up to TLSv1.3
2014-11-13 15:11:40 +00:00
Howard Chu
d06073d0d6
Fix a1e3b1cf3c
...
copy/paste error
2014-10-15 11:11:08 +01:00
Howard Chu
b36bd703d7
ITS#7967 fix abandon regression
...
From ITS#7712, avoid double-free of request
2014-10-15 11:08:29 +01:00
Kurt Zeilenga
055996fc2e
closedir() replacement function should return a result
...
return success, ignoring result of FindClose
2014-10-10 12:15:48 -07:00
Kurt Zeilenga
a1e3b1cf3c
Fix pointer incompatibility issue on some platforms
...
Don't assume tv_sec is a time_t.
2014-10-10 11:56:31 -07:00
Howard Chu
a7639a66a4
Android also only has memalign
2014-09-25 19:25:56 +01:00
Howard Chu
63c706ff2b
Merge remote-tracking branch 'origin/mdb.master'
2014-09-20 07:28:07 +01:00
Howard Chu
2f587ae081
new date
2014-09-20 07:24:32 +01:00
Howard Chu
fd1bf39770
Merge remote-tracking branch 'origin/mdb.master'
2014-09-19 02:30:32 +01:00
Howard Chu
62e4eeb7f7
ITS#7943 reinit txn flags
...
When reusing the main write txn
2014-09-19 01:45:43 +01:00
Howard Chu
cdcf70eeb6
Merge remote-tracking branch 'origin/mdb.master'
2014-09-18 02:12:33 +01:00
Howard Chu
891e662754
Plug leak in 4d02c741b1
...
Free writer txn on env_close
2014-09-18 01:22:02 +01:00
Howard Chu
674f52fdb4
Silence some clang warnings
2014-09-16 21:54:07 +01:00
Quanah Gibson-Mount
20407ec5da
Merge remote-tracking branch 'origin/mdb.master'
2014-09-15 13:53:04 -05:00
Howard Chu
b9495245b4
Release 0.9.14
2014-09-15 19:48:32 +01:00
Quanah Gibson-Mount
46331f0216
Merge remote-tracking branch 'origin/mdb.master'
2014-09-13 16:24:58 -05:00
Quanah Gibson-Mount
5ee99f1125
Change retry to num times 60. Testing shows that on a known dataset, this has the same growth behavior as 2.4.39, while num times 20 resulted in significant growth.
2014-09-13 16:21:17 -05:00
Howard Chu
3646ba966c
More for me_pgoldest
...
Leave it in main env struct, it doesn't need to be rolled back
with nested txns.
2014-09-09 19:44:23 +01:00
Howard Chu
29fd241fad
Remember oldest reader txnid
...
Don't walk the readers table unless we really need to.
2014-09-09 19:40:05 +01:00
Howard Chu
4d02c741b1
Use a single write txn
2014-09-04 10:40:11 +01:00
Howard Chu
8d346721a6
Merge remote-tracking branch 'origin/mdb.master'
2014-08-24 21:21:26 +01:00
Howard Chu
a054a194e8
ITS#7913 cleanup
...
we already checked for data == NULL, drop unnecessary if
2014-08-24 21:18:03 +01:00
Howard Chu
ff6bc13166
Merge remote-tracking branch 'origin/mdb.master'
2014-08-21 17:41:09 -07:00
Howard Chu
8fbbc71506
More for MIPS
...
Move CACHEFLUSH, avoid unnecessary if()
2014-08-21 17:40:20 -07:00
Howard Chu
55957253cc
Merge remote-tracking branch 'origin/mdb.master'
2014-08-17 20:49:13 -07:00
Howard Chu
4008e5e583
Partially revert ada2630699
...
Of course, MacOSX only has posix_memalign, and only in recent versions.
(Older versions could use valloc instead. That precludes ever changing
the LMDB pagesize to be different from the OS pagesize.) Not all that
crucial since it only affects mdb_env_copyfd1.
2014-08-17 20:44:53 -07:00
Howard Chu
b814f85920
Merge remote-tracking branch 'origin/mdb.master'
2014-08-17 14:56:55 -07:00
Hallvard Furuseth
cf4fe3b1fb
Microoptimize loose pages
2014-08-17 01:50:32 +02:00
Hallvard Furuseth
1e7eeed28d
Fix loose pages in mdb_freelist_save().
...
Leaving them in dirty_list caused breakage. Instead merge them
into me_pghead at the end, when no more pages will be allocated.
2014-08-17 00:29:12 +02:00
Hallvard Furuseth
983f896aa7
Split out mdb_midl_xmerge, add MDB_IDL_ALLOCLEN
2014-08-16 11:34:44 +02:00
Howard Chu
6e430cca90
Merge remote-tracking branch 'origin/mdb.master'
2014-08-11 11:02:31 -07:00
Howard Chu
992a96e171
ITS#7917
2014-08-11 11:01:20 -07:00
Howard Chu
322cd26a7b
ITS#7917 fix mdb_dbi_open
...
Don't let dummy go out of scope
2014-08-11 11:00:11 -07:00
Howard Chu
ada2630699
Just use memalign, not posix_memalign
...
Everything has it. Solaris doesn't have posix_memalign.
2014-08-07 11:06:53 -07:00
Howard Chu
2d731f8876
Merge remote-tracking branch 'origin/mdb.master'
2014-08-06 08:36:17 -07:00
Howard Chu
899b23f89d
More for MIPS
...
Do a cacheflush after writing data pages, separate from meta's cacheflush
2014-08-04 11:40:24 -07:00
Howard Chu
ae0c9f484d
ITS#7793 more for branch key update
2014-08-04 09:26:35 -07:00
Howard Chu
9cf1749f73
ITS#7793 doc update, again
2014-08-04 05:13:29 -07:00
Howard Chu
f21f15e5a0
ITS#7793 update branch key if needed
2014-08-04 04:57:53 -07:00
Howard Chu
9febe03eb5
More for MIPS
...
Paranoia for 3630066843
do the
cacheflush before setting mti_txnid.
2014-08-02 10:33:35 -07:00
Quanah Gibson-Mount
1f6f4f4f28
Merge remote-tracking branch 'origin/mdb.master'
2014-07-31 12:56:49 -05:00
Howard Chu
8498c6cba2
ITS#7913 mdb_cursor_get(*_DUP) cleanup
...
FIRST_DUP/LAST_DUP should succeed even on non-duplicate values
PREV_DUP should reset cursor's EOF flag.
2014-07-31 09:59:52 -07:00
Howard Chu
3630066843
Fix MIPS cache coherency on Linux
...
MIPS chips require manual control of on-chip caches. The cacheflush
syscall being used here only exists on MIPS Linux, other OSs will
require revisiting.
2014-07-26 18:16:02 -07:00
Quanah Gibson-Mount
011eb3a27c
Merge remote-tracking branch 'origin/mdb.master'
2014-07-24 12:07:44 -05:00
Howard Chu
d098184f61
Update date
2014-07-24 04:15:45 -07:00
Howard Chu
082bac1492
more for mdb_cursor_count
...
return MDB_NOTFOUND if the cursor is empty
2014-07-24 04:13:55 -07:00
Hallvard Furuseth
6cb1166635
Fix mdb_copy & co when MDB pagesize < OS pagesize
2014-07-24 04:04:24 -07:00
Howard Chu
1b08d8e503
ITS#7789 doc updates
2014-07-23 17:31:34 -07:00
Hallvard Furuseth
81b502e17e
ITS#7789 Fix mdb_env_write_meta().
...
Always write mapsize = max(other metapage:mapsize, env:mapsize).
2014-07-23 17:25:42 -07:00
Howard Chu
7ef970436d
Revert ITS#7789 commits, let's try this again.
...
Revert "ITS#7789 Fix resize vs MDB_NOMETASYNC, and a comment."
Revert "ITS#7789 more"
Revert "Revert "ITS#7789 update RESIZED errmsg text""
Revert "ITS#7789 update RESIZED errmsg text"
Revert "ITS#7789 persist mapsize changes"
This reverts commit 02285aca58
.
This reverts commit 38e71c68de
.
This reverts commit a5e4eecb1e
.
This reverts commit d8e18551c3
.
This reverts commit 5926e54bba
.
2014-07-23 17:19:33 -07:00
Quanah Gibson-Mount
fd0bdcb6c6
Merge remote-tracking branch 'origin/mdb.master'
2014-07-22 12:30:27 -05:00
Howard Chu
eef1ca007f
ITS#7027 actually implement RFC 2782 shuffle
2014-07-21 22:17:21 -07:00
Howard Chu
31995b535e
ITS#7027 fix bugs in prev commit
2014-07-21 22:12:22 -07:00
James M Leddy
5de85b922a
ITS#7027 Implement priority/weight for DNS SRV records
...
From RFC 2782:
A client MUST attempt to contact the target host with the
lowest-numbered priority it can reach.
This patch sorts the DNS SRV records by their priority, and
additionally gives records with a larger weight a higher probability
of appearing earlier. This way, the DNS SRV records are tried in the
order of their priority.
2014-07-21 19:31:59 -07:00
Howard Chu
015d6b909a
Fix env_open mode bits
2014-07-21 18:20:31 -07:00
Quanah Gibson-Mount
35f4443679
Merge remote-tracking branch 'origin/mdb.master'
2014-07-21 11:00:14 -05:00
Howard Chu
58e9c3add8
Fix mdb_cursor_count, reject uninit'd cursor
2014-07-21 08:33:59 -07:00
Howard Chu
fcb0768e7d
Silence prototype warnings
2014-07-21 08:11:33 -07:00
Ryan Tandy
9b36358270
ITS#7851 tell lutil_b64_pton the correct target buffer size
2014-07-18 09:42:22 -07:00
Howard Chu
204637b18d
Typo
2014-07-14 09:53:53 -07:00
Howard Chu
9049efe493
ITS#7896 fix for mdb_env_map
...
Don't pass non-NULL map address unless MDB_FIXEDMAP was used.
2014-07-14 09:53:36 -07:00
Howard Chu
3102cbbd55
ITS#7859 more for revert
2014-07-11 12:38:16 -07:00
Howard Chu
189f312d64
ITS#7859 refix
...
This was actually broken by 65e163d2
, ITS#6947. Reverting both
of those changes and fixing #6947 again.
2014-07-11 12:29:15 -07:00
Quanah Gibson-Mount
eb5faf5928
Merge remote-tracking branch 'origin/mdb.master'
2014-07-10 13:38:10 -05:00
Howard Chu
886ee41d55
More for cursor EOF
...
Must also set in sub-cursor if deleting entire subDB
2014-07-09 15:03:54 -07:00
Howard Chu
7f038d0f15
Zero-init copy2 writebuf
2014-07-09 12:05:37 -07:00
Hallvard Furuseth
2825ad64c2
MDB_MAXKEYSIZE = 0 (dynamic value) when MDB_DEVEL
2014-07-09 20:18:08 +02:00
Hallvard Furuseth
b3dedde612
MDB_DEVEL doxygen fix
2014-07-09 20:17:13 +02:00
Hallvard Furuseth
02285aca58
ITS#7789 Fix resize vs MDB_NOMETASYNC, and a comment.
2014-07-09 20:16:33 +02:00
Howard Chu
bda6a60ad4
Windows fixes
...
Always set the filesize when opening for writes. Otherwise
can't use backups from mdb_copy.
2014-07-09 10:22:25 -07:00
Howard Chu
f3573a7383
Windows compat
...
We mainly use Win32 functions, so cannot just use C-runtime strerror
to return error messages. We have to use Win32-specific messages.
Unfortunately, we document the API to return C-runtime error codes,
so we can't just switch to all Win32 error codes.
2014-07-09 10:02:21 -07:00
Howard Chu
c4d0f90fce
Fix loading of printable dump
...
Off-by-one in end check, would complain on valid input.
2014-07-09 09:16:03 -07:00
Howard Chu
38e71c68de
ITS#7789 more
...
persist size changes from env_open() as well. This was the
original behavior.
2014-07-09 06:54:32 -07:00
Howard Chu
a5e4eecb1e
Revert "ITS#7789 update RESIZED errmsg text"
...
This reverts commit d8e18551c3
.
And partially reverts mapsize check. Only mapsize increases are relevant.
2014-07-09 06:19:06 -07:00
Howard Chu
d5371347e8
ITS#7825 more
...
Set read txn's dbiseqs to env's. Set child txn's dbiseqs to parent's.
Simplify DBI_CHANGED test, no need to check md_name. No-op dbi_close
of already closed handle.
2014-07-09 05:55:30 -07:00
Howard Chu
e0273020bd
Updates #7789 , #7825
2014-07-08 21:40:11 -07:00
Howard Chu
276aa55969
ITS#7825 more
...
only update dbiseq in dbi_open on write txns
2014-07-08 21:31:48 -07:00
Howard Chu
04851e442f
ITS#7825 tweak prev commit
...
dbiseqs are only checked in write txns so omit from read txns
2014-07-08 21:22:07 -07:00
Howard Chu
0401f2deed
ITS#7825 add MDB_BAD_DBI error code
...
Use DBI sequence numbers to detect DBIs being closed while in use.
2014-07-08 21:02:40 -07:00
Howard Chu
d8e18551c3
ITS#7789 update RESIZED errmsg text
2014-07-08 20:05:31 -07:00
Howard Chu
5926e54bba
ITS#7789 persist mapsize changes
...
Write decreases too, not just increases. Check for any size change
that was not requested by this process.
2014-07-08 19:18:02 -07:00
Howard Chu
604256ceff
Update LMDB version date/info
2014-07-08 16:37:28 -07:00
Howard Chu
2f04728471
ITS#7892 Fix MacOSX section name
2014-07-08 16:27:03 -07:00
Quanah Gibson-Mount
bfd8b3a42a
Merge remote-tracking branch 'origin/mdb.master'
2014-07-08 17:21:10 -05:00
Hallvard Furuseth
e1a676eb18
ITS#7713 cleanups
...
'#ifdef MDB_DEVEL' -> '#if MDB_DEVEL'
Fix comments, use actual PAGEBASE macro as originally intended.
Actually enable 64K pages. Set MDB_DATA_VERSION for testing only.
2014-07-08 15:01:18 -07:00
Hallvard Furuseth
6ed295b256
Fixes for loose pages
...
mdb_txn_commit(child): Give loose pages to parent.
Use a pointer beyond the page header instead of mp_next, so
we will not need to save/restore mp_pgno. This avoids a crash
caused by references to mp_pgno.
2014-07-08 14:39:57 -07:00
Howard Chu
b3e8c71dc7
Re-fix cursor EOF
...
Fix in 534dcc7212
was in wrong place
2014-07-08 11:54:24 -07:00
Howard Chu
68e6faad5c
ITS#7713 handle 65536 byte page size
...
Fix mp_lower/mp_upper to exclude PAGEHDRSZ, which means our
max mp_upper is now pagesize - PAGEHDRSZ and won't overflow.
Currently must define MDB_DEVEL to use. Will be default for
LMDB 1.0/OpenLDAP 2.5
2014-07-07 17:31:15 -07:00
Howard Chu
534dcc7212
Set xcursor EOF after deleting last entry
2014-07-07 17:13:51 -07:00
Howard Chu
1ac5147fc1
Compacting copy doesn't need to snapshot metas
2014-07-06 17:47:25 -07:00
Howard Chu
61f7ec9bfa
Windows fixes
2014-07-06 07:49:38 -07:00
Howard Chu
7d996d7f3d
Play games with object file layout
...
Use gcc section attribute to keep less frequently used functions
away from main code.
2014-07-05 08:48:47 -07:00
Howard Chu
3e98addbe2
Rationalize mdb_env_copy2 API
2014-07-05 07:49:10 -07:00
Howard Chu
059b357d1a
More tweaks to copyfd2
...
Make sure the writer thread starts and stops when we expect it to.
2014-07-03 14:26:14 -07:00
Howard Chu
03f0ecb001
More copyfd2 tweaks
2014-07-03 10:49:05 -07:00
Howard Chu
6043103c13
Fix envinfo to return fixed map address
2014-07-03 08:31:57 -07:00
Howard Chu
64191264b8
Windows compat
2014-07-03 07:49:22 -07:00
Howard Chu
8836b78e94
Fix subDB/ovpage copying
2014-07-02 11:44:06 -07:00
Howard Chu
af3c340758
Larger WBUF still better on large DB
2014-07-02 08:07:11 -07:00
Howard Chu
342cd72f25
Don't check LEAF2 pages for subnodes
2014-07-02 07:45:12 -07:00
Howard Chu
4009c9ae65
Add mdb_env_copy2()
...
And mdb_env_copyfd2(). Perform compaction on the copy. Trims out
freed pages and renumbers data pages in sequential order. This is
more CPU-intensive since it copies and modifies data pages.
2014-07-01 21:45:43 -07:00
Howard Chu
4d65cf1326
dump/load need mapsize etc.
2014-07-01 18:53:47 -07:00
Howard Chu
c5be1292ac
All diagnostics should go to stderr
2014-07-01 05:15:44 -07:00
Ryan Tandy
7d2f9c6277
ITS#7877 assume gnutls is at least 2.12.0
2014-06-30 20:08:38 -07:00
Ryan Tandy
0fd0f24f03
ITS#7877 assume gnutls provides cipher suites
2014-06-30 20:08:17 -07:00
Ryan Tandy
829027945f
ITS#7877 use nettle instead of gcrypt
2014-06-30 20:07:41 -07:00
Howard Chu
ee599c5250
More gcov setup tweaks
2014-06-30 04:42:41 -07:00
Howard Chu
b09e46904c
ITS#7886 fix mdb_copy write size
...
Don't try to write past end of file
2014-06-30 04:41:50 -07:00
Hallvard Furuseth
91d8ad1d3c
Fix mdb_page_loose() vs. mdb_page_flush().
...
Do not overwrite loose pages' mp_pgno with mp_next.
mdb_page_flush() will use mp_pgno to rebuild dirty_list.
2014-06-28 13:38:03 +02:00
Howard Chu
c73f087750
Trap signals
...
Try to exit cleanly to avoid leaving stale readers. Not
a critical issue since mdb_reader_check can take care of
them, but still cleaner.
2014-06-27 10:53:11 -07:00
Howard Chu
277526d0f0
Setup for gcov/coverage testing
2014-06-26 05:19:47 -07:00
Quanah Gibson-Mount
f6eacdbbc5
Merge remote-tracking branch 'origin/mdb.master'
2014-06-24 13:46:07 -05:00
Howard Chu
a3e5539505
More for mdb_page_loose
...
Require that the page is dirty in the current txn,
not a parent txn.
2014-06-24 11:43:13 -07:00
Howard Chu
7fe85f5c82
More MDB -> LMDB renames
2014-06-24 04:42:44 -07:00
Howard Chu
9a4ef8406e
Doc updates
...
Rename MDB -> LMDB
Integrate tool manpages
2014-06-24 04:16:19 -07:00
Howard Chu
dda779d83e
Windows64 32/64 silliness
...
On Windows64, long is the same size as int. Use size_t when we
need an actual 64 bit unsigned long.
2014-06-23 08:00:11 -07:00
Howard Chu
ca47c2af1f
ITS#7879 Windows build compatibility
...
Just use srand/rand, we don't care about the quality
of the random numbers, we just want some data.
2014-06-23 07:39:06 -07:00
Howard Chu
225bcae3e7
Flesh out mdb_cmp_cint for BigEndians
2014-06-23 07:36:38 -07:00
Howard Chu
aa89ca31b3
More for page_loosen
...
Don't try this when working on the FreeDB. Again,
too much hassle to unkink the recursions...
2014-06-22 16:39:14 -07:00
Howard Chu
d9423e13f8
More cleanup for page_merge, page_loosen
...
Only loosen src page if it's actually dirty.
Refactor page refs in page_merge.
2014-06-21 15:53:41 -07:00
Howard Chu
cf331ccb3d
Silence ptr arithmetic warnings
2014-06-21 08:34:45 -07:00
Howard Chu
7cab7b95e2
Handle loose pages
...
Pages that were dirtied and deleted in the same txn should be
reused, instead of consuming freeDB pages.
2014-06-21 03:30:34 -07:00
Howard Chu
eebbd22c2f
Fix mdb_page_merge
...
Similar to prev commit for mdb_node_move, the call of
mdb_page_serch_lowest() was leaving csrc unusable.
2014-06-20 23:40:44 -07:00
Howard Chu
79e8462d74
Fix mdb_node_move
...
Was leaving stale info in dst cursor
2014-06-20 17:56:04 -07:00
Howard Chu
0d013609fe
Fix lineno count
2014-06-20 09:03:41 -07:00
Howard Chu
c05f45b7dd
Fix multiple subDBs
2014-06-20 09:00:33 -07:00
Howard Chu
1a72b19e26
Fix unhex
2014-06-20 08:56:52 -07:00
Howard Chu
21b51cb746
Add mdb_load
2014-06-20 08:49:59 -07:00
Howard Chu
3e83b5b27b
Add mdb_dump, update copyrights
2014-06-20 06:36:30 -07:00
Quanah Gibson-Mount
fed9370fae
Merge remote-tracking branch 'origin/mdb.master'
2014-06-18 16:27:06 -05:00
Howard Chu
59d30a49c3
Bump to 0.9.13
2014-06-18 14:25:46 -07:00
Howard Chu
0c041e0977
Bump to 0.9.13
2014-06-18 14:07:15 -07:00
Hallvard Furuseth
b898cb642a
ITS#7793 Re-fix MDB_CURRENT doc: Match current item
2014-06-18 23:01:14 +02:00
Hallvard Furuseth
01a75c5ab5
Fix MDB_GET_MULTIPLE/MDB_NEXT_MULTIPLE doc.
2014-06-18 23:01:14 +02:00
Howard Chu
39ed8bef04
Tweak ovpage search
...
Use num*20, chosen from empirical testing
2014-06-18 13:37:04 -07:00
Howard Chu
b4ecbd78d9
Fix some overwrite quirks
...
Was skipping the overwrite in some cases, if the cmp function
said the new and old already matched. We should always perform
the overwrite anyway, since the cmp function may only be doing
a prefix compare and the data may actually be different.
2014-06-18 12:29:13 -07:00
Howard Chu
dc7f2530dd
Tweak prev patch for ovpage search
2014-06-18 09:07:39 -07:00
Howard Chu
2db55c7d99
Shorten search for ovpage space
2014-06-18 03:02:08 -07:00
Howard Chu
52406746bd
Remove bogus file
...
added by mistake in 17c09fa476
2014-06-18 02:53:17 -07:00
Quanah Gibson-Mount
1cde310819
Merge remote-tracking branch 'origin/mdb.master'
2014-06-13 12:54:53 -05:00
Howard Chu
ecb71ee197
Bump version to 0.9.12
2014-06-13 10:46:27 -07:00
Quanah Gibson-Mount
ba4dd5b733
Merge remote-tracking branch 'origin/mdb.master'
2014-06-13 12:37:05 -05:00
Howard Chu
17c09fa476
ITS#7875 fix #7681 regression
...
Due to commit 18a07eb7c2
2014-06-11 02:27:56 -07:00
Howard Chu
45ff842542
Plug one-time leaks
2014-06-04 02:23:18 -07:00
Howard Chu
71ff674a02
ITS#7871 fix ldif-wrap length
...
Doc has been updated to note the default was actually 78.
The off-by-two error is fixed. Note that wrap=1 will still
output 2 columns, otherwise it can't output anything besides
the continuation character.
2014-06-04 00:52:01 -07:00
Alexey Naumov
a93810cc3d
Fix possible crash in DLL_THREAD_DETACH (explodes in .Net Framework)
2014-05-30 23:39:44 -07:00