Hallvard Furuseth
937b5eff07
Don't use non-existent node info in branch/leaf2
2014-03-16 12:42:42 +01:00
Hallvard Furuseth
86f8b203f5
Move code out of mdb_cursor_del0() and mdb_del().
...
Prepares for the next commits.
2014-03-16 12:42:42 +01:00
Hallvard Furuseth
012d7b5de7
More checks for closed DBIs and invalidated txns.
...
Factor txn/DBI-checks out to TXN_DBI_EXIST().
mdb_audit(): Skip closed DBIs.
mdb_cursor_renew(), mdb_stat(): Check DBI and txn.
mdb_cursor_count(): Check txn.
mdb_dbi_flags(): Check DBI.
2014-03-16 12:42:42 +01:00
Hallvard Furuseth
3e7c1bd4e2
mdb_page_list(): Support & display all page types
2014-03-16 12:42:42 +01:00
Hallvard Furuseth
a22c31115f
mdb_txn_renew0(): Fix un-mutexed me_flags update.
...
Replace env flag MDB_LIVE_READER with field me_live_reader.
2014-03-16 12:42:42 +01:00
Hallvard Furuseth
684bb867ce
Doxygen fixes
2014-03-16 12:42:42 +01:00
Howard Chu
4ddf2ec831
Rename samples
...
They're meant to be read and studied, not run.
2014-03-16 03:55:03 -07:00
Howard Chu
797ff136a8
ITS#7815 more for page_split
...
This case didn't come up in testing. Needs finer grained test.
2014-03-05 20:40:12 -08:00
Howard Chu
0e7fba73b7
ITS#7815 fix mdb_page_split
...
Was leaving cursor pointed at wrong page if the newindx was
in the right sibling page, and the parent was also split.
2014-03-05 20:04:42 -08:00
Howard Chu
5f92a0bb16
ITS#7803 reference slapd-config(5)
...
Also replace BDB example with LMDB
2014-02-28 12:52:39 -08:00
Kevin H. Patterson
5791cc46a4
ITS#7806 fixed memory leak in LDAPAsynConnection.cpp
2014-02-26 11:06:44 -08:00
Hallvard Furuseth
e2bdd44624
mtest*.c, sample-*.c: Add/note error checks.
2014-02-19 21:25:40 +01:00
Hallvard Furuseth
a604948993
mtest[46]: Use different DBs when different flags.
2014-02-19 21:25:40 +01:00
Howard Chu
5cab6b77e4
ITS#7798 fix mdb_entry_decode()
2014-02-07 03:02:33 -08:00
Howard Chu
106a4b90aa
More for ITS#4365 refix CR/LF handling
...
Was rejecting "-\r\n" in input LDIF
2014-02-07 00:31:23 -08:00
Hallvard Furuseth
4e954f8ae8
ITS#7793 mdb_cursor_put(): Fix MDB_CURRENT.
...
Ignore key, broken by 5bda3565a9
and some older code. Document and clarify MDB_CURRENT usage.
Also affects non-MDB_CURRENT put() with empty data and a key
which matches by the mdb_set_compare function but not by memcmp.
2014-01-28 14:27:27 +01:00
Kurt Zeilenga
5c878c1bf2
Happy new year (belated)
2014-01-25 05:21:25 -08:00
Quanah Gibson-Mount
be3971d5d2
Merge remote-tracking branch 'origin/mdb.master'
2014-01-15 11:17:26 -06:00
Howard Chu
aa3463ec7c
Bump version to 0.9.11
2014-01-15 09:09:48 -08:00
Quanah Gibson-Mount
0b03c51e79
Merge remote-tracking branch 'origin/mdb.master'
2014-01-14 20:33:22 -06:00
Howard Chu
ec97f49a65
Note changes for LMDB 0.9.11
2014-01-14 17:12:48 -08:00
Hallvard Furuseth
98f3bc88bf
Revert "ITS#7772 Reduce spurious sub-page growth."
...
This reverts commit 75494c08b4
,
which must await a fix to ITS#7771 (DUPSORT cursor tracking).
2014-01-13 20:46:08 +01:00
Howard Chu
b1ed3bf10a
ITS#7778 fix regression from #7329
2014-01-13 11:26:46 -08:00
Howard Chu
3f241365d5
Make sure mapsize changes take effect on Windows.
2014-01-12 20:04:50 -08:00
Howard Chu
14868fcab6
ITS#7783 workaround stupid NSPR bug
...
free(NULL) is supposed to be safe. "Portable wrapper libraries"
that fail to preserve this behavior are inherently broken.
But then again, this is Mozilla code, so that's redundant.
2014-01-12 13:51:09 -08:00
Quanah Gibson-Mount
752fdfd445
Merge remote-tracking branch 'origin/mdb.master'
2014-01-07 17:45:08 -06:00
Hallvard Furuseth
5bda3565a9
ITS#7775 Drop <assert.h>, drop/replace assert()s.
...
db_mid2l_insert(): Move assert to mdb.c.
mdb_cursor_set(): Previous assert cannot fail now.
mdb_cursor_put(): Check mc/key and return EINVAL.
mdb_cursor_dbi(): No error return, so just segfault if cursor==NULL.
2014-01-06 23:21:54 +01:00
Howard Chu
6fb561d33e
ITS#7775 Cleanup mdb_node_del()
2014-01-06 23:21:44 +01:00
Hallvard Furuseth
88342f9661
ITS#7775 Add mdb_env_set_assert()
2014-01-06 23:17:38 +01:00
Hallvard Furuseth
e40dae1064
Add mdb_env_<set,get>_userctx()
2014-01-06 23:17:38 +01:00
Hallvard Furuseth
c99525f42a
ITS#7377 Invalidate txn on page-allocation errors
...
This should likely be reverted when all callers handle these errors.
2014-01-06 23:17:37 +01:00
Hallvard Furuseth
123b6e3c3e
Wrap __func__ in mdb_func_
2014-01-05 16:37:26 +01:00
Hallvard Furuseth
21621cc741
Invalidate the txn on corruption/internal errors
2014-01-05 16:26:21 +01:00
Howard Chu
c48cdd7a16
ITS#7775 cleanup unnecessary assert()s
2014-01-03 12:40:28 -08:00
Hallvard Furuseth
1f191ba930
mdb_page_malloc(): Move VGMEMP_ALLOC before memset
2013-12-31 02:16:19 +01:00
Hallvard Furuseth
ce2a0d4016
ITS#7771 mdb_cursor_del0(): Fix xcursor tracking.
2013-12-29 15:58:21 +01:00
Hallvard Furuseth
5adc46d1d2
sprintf format: pid_t need not be an int.
2013-12-29 15:57:33 +01:00
Hallvard Furuseth
661dd2c66d
Add mdb_dbg_pgno(): (sub)pagenum for debug output.
2013-12-29 15:09:51 +01:00
Hallvard Furuseth
75494c08b4
ITS#7772 Reduce spurious sub-page growth.
...
mdb_cursor_put(): Use free sub-page space added by a
previous put(existing DUPSORT item), if any.
Tweak NUMKEYS code to avoid a new signedness warning.
2013-12-29 15:09:05 +01:00
Hallvard Furuseth
46de4ab84c
ITS#7665 Drop lmdb.h doc on non-overlapping flags.
...
It was inaccurate and misplaced. Verify it in mdb.c instead.
2013-12-29 14:54:17 +01:00
Hallvard Furuseth
353cc77cff
ITS#7515 has been fixed.
2013-12-29 14:52:30 +01:00
Hallvard Furuseth
c91f38160c
Drop UNLOCK_MUTEX_R() on mdb_reader_pid() error
2013-12-29 14:52:30 +01:00
Pierangelo Masarati
3be02f83df
handle softadd/softdel (internal modifications; ITS#7773)
2013-12-28 16:20:08 +01:00
Pierangelo Masarati
2358b35c58
fix years old cut'n'paste
2013-12-28 11:12:42 +01:00
Hallvard Furuseth
4c8f57615c
Fix commit "Raise safe max MDB_MAXKEYSIZE."
...
I.e. d69d2ce230
, it left out some changes.
2013-12-21 12:31:57 +01:00
Hallvard Furuseth
5415e1e6de
ITS#6758 Rewrite code for contrib:wrap_slap_ops.
...
Tweak slapd code so wrap_slap_ops can process it: Use pointers
BackendInfo *bi instead of array "func" = &bi->bi_op_bind. In
slapo-chain, keep a slap_operation_t instead of a function ptr.
2013-12-11 14:40:45 +01:00
Hallvard Furuseth
7bb8b706c5
ITS#6758 Add SLAP_OP() &co, contrib:wrap_slap_ops.
...
Add framework for debug macros SLAP_OP(), slap_be_op(),
slap_bi_op() around LDAP-operation backend calls.
contrib/slapd-tools/wrap_slap_ops converts code to use them.
Code compiles as before by default. #define USE_RS_ASSERT
enables debugging, $NO_RS_ASSERT tweaks it. See slapd/result.c.
2013-12-11 14:40:45 +01:00
Howard Chu
79b12f2f93
ITS#7762 shortcut NULL RDNs
2013-12-11 04:41:48 -08:00
Hallvard Furuseth
a2ed03642c
Replace MDB_node.mn_offset[], to ease debugging.
2013-12-11 11:57:13 +01:00
Hallvard Furuseth
2ce9ffa003
Comment MDB_node, mdb_page_unspill, mdb_update_key
2013-12-11 11:57:13 +01:00