- Dec 11, 2013
-
-
Hallvard Furuseth authored
It and the MDB_msg_func can now return >= 0 for success. Always return any MDB_msg_func() error result.
-
Hallvard Furuseth authored
-
Hallvard Furuseth authored
Use a sub-DB for DUPSORT item #1/#2 per key if needed: Not a sub- page too big for a node, nor an overflow page (which not all DUPSORT code checks for). Move "insert" code, to avoid non-loop goto upwards. (This is the commit which needs the change to xdata.mv_size in commit 9d6e4a91 "page sizes".)
-
Hallvard Furuseth authored
Handle keys stored by a liblmdb with a bigger MDB_MAXKEYSIZE. mdb_get/mdb_del(absent key bigger than our MDB_MAXKEYSIZE) now return MDB_NOTFOUND instead of MDB_BAD_VALSIZE.
-
Hallvard Furuseth authored
Change me_nodemax to not count the mp_ptrs[] entry. That's mostly how it was used. Compare node sizes ">" me_nodemax instead of ">=". The ">=" was a workaround for confusing sizes with and without the mp_ptrs[] entry, but broke for nodes with size (old me_nodemax-1). Explicitly make me_nodemax even. An odd value could break the comparisons. It was even anyway because MDB_MINKEYS == 2.
-
Hallvard Furuseth authored
Do not give uneven sizes to the sub-page and the node it lives in.
-
Hallvard Furuseth authored
Don't set dkey.mv_size if mdb won't clear it before next iteration.
-
Hallvard Furuseth authored
-
Hallvard Furuseth authored
Drop unused computed/assigned values. mdb_page_alloc(): Make "mop_len>0 implies mop!=NULL" provable.
-
Hallvard Furuseth authored
Support MDB_NOSUBDIR. Catch more errors. Write messages to stderr, not stdout which the data too may be piped to.
-
- Dec 05, 2013
-
-
Howard Chu authored
On near match, return the matched data.
-
- Nov 30, 2013
-
-
Howard Chu authored
-
- Nov 12, 2013
-
-
Howard Chu authored
Measured perf cost of meminit was 7% worst case on an Intel Core2 system. YMMV.
-
Howard Chu authored
-
Howard Chu authored
Silence warnings, fix broken MinGW64 definitions, etc.
-
Howard Chu authored
-
- Nov 11, 2013
-
-
Howard Chu authored
Init malloc'd memory by default, use #MDB_NOMEMINIT to disable. Bump version to 0.9.10
-
- Nov 07, 2013
-
-
Hallvard Furuseth authored
Initialize unused portions of DB pages, for security or to silence checkers like Purify and Valgrind. Like BDB configure --enable-umrw.
-
Hallvard Furuseth authored
A node may need room for [key, subpage with 2 items] = 3 keys.
-
Hallvard Furuseth authored
Use DB page size = min(32k, OS pagesize). Previous limit was 8k (MDB_MINKEYS*MDB_PAGESIZE). Handle DB pagesize < OS pagesize. That's an I/O pessimization, but transactions remain atomic: Only writing the MDB_meta must be atomic, and it fits in one OS page. Don't truncate desired subpage size: Asssign it to a size_t (mv_size), not an uint16_t (mp_upper).
-
Hallvard Furuseth authored
-
Howard Chu authored
-
Howard Chu authored
Skip cursors that aren't as deep as current cursor
-
- Nov 05, 2013
-
-
Howard Chu authored
-
- Nov 01, 2013
-
-
Howard Chu authored
Tweak split_indx check, go one slot further.
-
- Oct 31, 2013
-
-
Howard Chu authored
In d8eccb35
-
- Oct 28, 2013
-
-
Howard Chu authored
-
David Wilson authored
-
- Oct 24, 2013
-
-
Howard Chu authored
-
- Oct 21, 2013
-
-
Howard Chu authored
Return the environment's filedescriptor. Useful when the caller is doing their own locking.
-
- Oct 14, 2013
-
-
Howard Chu authored
USE_POSIX_SEM must define USE_HASH
-
- Oct 12, 2013
-
-
Howard Chu authored
-
Howard Chu authored
-
Howard Chu authored
-
Howard Chu authored
-
Howard Chu authored
Also, check the split point on branch pages as well as leaf pages.
-
Howard Chu authored
There may be other uses for it besides semaphore names.
-
- Oct 09, 2013
-
-
Howard Chu authored
Other cursors being fixed up are not necessarily height 1.
-
- Oct 08, 2013
-
-
Howard Chu authored
-
- Oct 04, 2013
-
-
Howard Chu authored
Don't allow shrinking below minimum size for an already open env.
-