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
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
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
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
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
Howard Chu
ecb71ee197
Bump version to 0.9.12
2014-06-13 10:46:27 -07:00
Howard Chu
17c09fa476
ITS#7875 fix #7681 regression
...
Due to commit 18a07eb7c2
2014-06-11 02:27:56 -07:00
Alexey Naumov
a93810cc3d
Fix possible crash in DLL_THREAD_DETACH (explodes in .Net Framework)
2014-05-30 23:39:44 -07:00
Hallvard Furuseth
c0d64cf182
Comment ~MDB_APPEND, from earlier commit message.
2014-05-30 10:50:04 +02:00
Hallvard Furuseth
cb5656c726
Factor out mdb_cmp_clong()
2014-05-30 10:47:56 +02:00
Hallvard Furuseth
64a02e2279
More for big MDB_MAXKEYSIZE with MDB_DUPSORT.
...
With mdb_cursor_put(new key, data item big enough to need a sub-DB):
- Track cursors as when adding other nodes. The "!do_sub" is now
unneeded. Before ITS#7861 it distinguished inserting key from data.
- Set MDB_TXN_ERROR if an empty sub-DB was created. I.e. adding
key:subDB succeeded, but inserting the data item failed.
2014-05-30 10:47:56 +02:00
Hallvard Furuseth
b37b2a651f
Factor out MDB_TXN_ERROR
2014-05-30 09:06:08 +02:00
Hallvard Furuseth
ba8f59edf4
Simplify MDB_MULTIPLE
2014-05-30 09:06:08 +02:00
Hallvard Furuseth
ac158c7e1e
ITS#7834 Fix MDB_MULTIPLE writing multiple keys.
...
Update the state before looping, so the key is not duplicated.
Broke in 4c8f57615c
(mostly).
2014-05-30 09:06:08 +02:00