Commit Graph

21235 Commits

Author SHA1 Message Date
Hallvard Furuseth
9f7ae8925f Add Caveat: Readers need write access. Whitespace. 2013-10-04 00:51:58 +02:00
Hallvard Furuseth
0f9b79e12c Maintain MDB_cursor.mc_top 2013-10-04 00:32:35 +02:00
Hallvard Furuseth
99ea7669a3 mdb_cursor_sibling(): Fix error result 2013-10-03 23:59:25 +02:00
Hallvard Furuseth
8f075595a1 mdb_node_add(): Plug page leak when MDB_PAGE_FULL.
Do not fail after mdb_page_new() succeeds.
2013-10-03 23:59:25 +02:00
Hallvard Furuseth
3a1d73daff Optimize code holding reader mutex 2013-10-03 23:59:24 +02:00
Hallvard Furuseth
3d67838a59 Set MDB_xcursor DB_DIRTY, clear md_name.
Both were unused and md_name was unmaintained -- except
mdb_cursor_touch(xcursor) would abuse md_name as a key to
touch MAIN_DBI if it could somehow get passed ! DB_DIRTY.
2013-10-03 23:59:24 +02:00
Hallvard Furuseth
07dc79a7c3 Set subDB DBI=parent DBI, fix MDB_DUPSORT delete.
xcursor DBIs were parent DBI+1 for debugging. Instead output
-(parent DBI).  Fixes a crash in mdb_cursor_del0()'s xcursor
tracking, it forgot to subtract 1 for C_SUB cursors.
2013-10-03 23:59:24 +02:00
Howard Chu
79eac42c0f s/MDB_NORDLOCK/MDB_NOLOCK/
Leave all lock management to the caller.
2013-10-03 10:26:44 -07:00
Howard Chu
a1685c3ef7 More doc for MDB_NORDLOCK 2013-10-01 23:36:57 -07:00
Howard Chu
f739940547 Add MDB_NORDLOCK to omit all reader table usage
Calling app wants to manage its own locking.
2013-10-01 13:16:38 -07:00
Emily Backes
85003d8a54 ITS#7712 Fix lock ordering in libldap abandon 2013-09-30 15:31:27 -07:00
Hallvard Furuseth
e3f6c152c5 Drop unneeded code.
MDB_txn.mt_toggle: Use (mt_txnid & 1) instead.
Drop error checks which will be repeated.
mdb_cursor_set(): Turn assert into if/return to match the above.
mdb_cursor_del(): 'flags' are now used as bitflags.
2013-09-23 20:21:11 +02:00
Hallvard Furuseth
2980bd30f5 Clean up and simplify mdb_page_search().
Only named DBs can have DB_STALE, and they do not use MDB_PS_MODIFY.
Replace magic key values with flags.  Drop duplicated comments at
mdb_page_search_root() vs. mdb_page_search(), and rephrase.
2013-09-23 20:21:11 +02:00
Hallvard Furuseth
31cfca9316 Tweak MDB_DEBUG output 2013-09-23 20:20:42 +02:00
Hallvard Furuseth
7bdb5be0b5 Rename SWAP() to avoid conflict with sqlightning.
Happened since sqlightning #includes mdb.c, midl.c.
2013-09-23 20:20:05 +02:00
Hallvard Furuseth
52cb8b3417 mdb_page_unspill(): Rename local vars.
The names have caused bugs, "txn" was treated as
the current transaction.
2013-09-23 20:13:27 +02:00
Hallvard Furuseth
8e1d10e828 ITS#7515 Fix mdb_page_unspill() in nested txn.
Malloc a page in this txn, not in a parent.
2013-09-23 20:13:27 +02:00
Hallvard Furuseth
a3b3482854 ITS#7515 Fix mdb_txn_commit(nested txn with spills).
Catch malloc error.
Fix hunt for dirty vs spilled pages: Don't leave x at a deleted pageno.
Cleanup: Factor out variables, squash pages already marked for deletion.
2013-09-23 20:13:27 +02:00
Hallvard Furuseth
bc48a40621 ITS#7515 Fix mt_dirty_room in nested txns.
Fix description & code: Also ignore dirty pages hidden by
spilled pages, as they won't merge into our dirty_list.
Update it in mdb_page_flush() instead of mdb_page_spill().
2013-09-23 20:13:27 +02:00
Hallvard Furuseth
cfe262dce9 ITS#7515 mdb_pages_xkeep(): Careful about xcursors.
Don't prod sub-pages or pages referring to uninitialized xcursors.
2013-09-23 20:13:27 +02:00
Hallvard Furuseth
5b96d68faf mdb_pages_xkeep(): Reformat, use common flag mask 2013-09-23 20:13:27 +02:00
Hallvard Furuseth
5b21307f29 Update MDB documentation and comments. 2013-09-23 20:09:47 +02:00
Hallvard Furuseth
3335b25834 ITS#7682 mdb_env_copy(): Avoid Linux O_DIRECT bug.
Use fcntl() to set the flag.  Linux open(,O_DIRECT...) can create
the file even on failure, if the filesystem lacks O_DIRECT support.
2013-09-23 20:07:29 +02:00
Howard Chu
912e09fd04 ITS#7681 fix 18a07eb7c2
Set rc=0 when taking the SET_RANGE branch
2013-09-21 14:51:01 -07:00
Howard Chu
0144da6eab ITS#7701 fix mdb_rebalance
Must copy tmp cursor back to real cursor when merging into tmp cursor.
2013-09-21 14:37:11 -07:00
Howard Chu
7915f51889 Fix modrdn unique check
Just check normalized name match. Case-changes are allowed.
2013-09-19 16:00:04 -07:00
Quanah Gibson-Mount
a672161ab7 Add maxsize parameter for mdb examples 2013-09-19 15:03:53 -07:00
Quanah Gibson-Mount
4eecd27729 Update example slapd.conf bits to use mdb instead of bdb 2013-09-19 14:28:12 -07:00
Quanah Gibson-Mount
74c52fb136 Switch example slapd.conf to use mdb instead of bdb 2013-09-19 14:23:11 -07:00
Quanah Gibson-Mount
4562f89a90 Regenerated configure 2013-09-19 13:38:52 -07:00
Quanah Gibson-Mount
8e80555696 Fix option bits 2013-09-19 13:38:37 -07:00
Quanah Gibson-Mount
837b82a986 Updated configure 2013-09-19 13:08:57 -07:00
Quanah Gibson-Mount
68303f9643 More for flag changes 2013-09-19 13:01:30 -07:00
Quanah Gibson-Mount
ee93424dd2 Note bdb/hdb are deprecated and scheduled for removal in openldap 2.6 2013-09-19 12:51:33 -07:00
Quanah Gibson-Mount
741d01963e Default hdb to "no" instead of "yes" 2013-09-19 11:40:24 -07:00
Quanah Gibson-Mount
1a712bf18e Enable features that were hidden behind LDAP_DEVEL 2013-09-19 09:50:52 -07:00
Pierangelo Masarati
919a0f5b54 ITS#7687: password modify can muck with controls (quick fix) 2013-09-10 22:03:32 +02:00
Howard Chu
16f8b0902c ITS#7398 add LDAP_OPT_X_TLS_PEERCERT
retrieve peer cert for an active TLS session
2013-09-10 04:31:39 -07:00
Howard Chu
0045e56c34 ITS#7683 more for tls version/cipher info
Add LDAP_OPT_X_TLS_VERSION / LDAP_OPT_X_TLS_CIPHER for
retrieving from an LDAP session handle. Update ldap_get_option(3).
2013-09-09 11:52:10 -07:00
Howard Chu
057b2bab20 Merge remote-tracking branch 'origin/mdb.master' 2013-09-09 08:30:52 -07:00
Howard Chu
0f842a2710 Release 0.9.8 2013-09-09 08:29:46 -07:00
Howard Chu
819566415e ITS#7381 more for prev commit 2013-09-09 04:59:20 -07:00
Howard Chu
721e46fe66 ITS#7595 don't try to use EC if OpenSSL lacks it 2013-09-08 06:32:23 -07:00
Howard Chu
c0e2961f81 Drop unused var in prev commit 2013-09-07 14:58:18 -07:00
Howard Chu
88d22a1ca3 Simplify write waiter handling
Writer threads do their own wait using select/poll instead of
asking the listener thread. Eliminates one mutex+one condvar
per conn plus multiple wakeups of the listener thread. Also
fixes writetimeout to wait an exact time, instead of the
approximation used in the listener thread.
2013-09-07 14:53:02 -07:00
Howard Chu
7d6d6944c5 ITS#7683 log tls prot/cipher info
Note: I could not test the MozNSS patch due to the absence of
NSS PEM support on my machine. Given the review comments in
https://bugzilla.mozilla.org/show_bug.cgi?id=402712 I doubt that
trustworthy PEM support will be appearing for MozNSS any time soon.
2013-09-07 12:22:09 -07:00
Howard Chu
9562ad00bd ITS#7595 more doc for elliptic curve 2013-09-07 10:13:40 -07:00
Howard Chu
69f810d549 ITS#7685 add missing olcTLSProtocolMin 2013-09-07 10:00:11 -07:00
Howard Chu
e631ce808e ITS#7595 Add Elliptic Curve support for OpenSSL 2013-09-07 09:47:40 -07:00
Howard Chu
0205e83f46 ITS#7430 GnuTLS: Avoid use of deprecated function 2013-09-07 09:41:46 -07:00