Howard Chu
180e1d5269
Don't maintain a DN_SUBTREE index for the backend suffix, just return
...
BDB_IDL_ALL. This has a huge impact on I/O and txn logs.
2001-12-03 14:04:06 +00:00
Howard Chu
70a900e34e
Rewrote entry_encode/entry_decode again, uses 50% less disk space.
2001-12-03 14:00:19 +00:00
Howard Chu
d68b891ced
In presence_candidates(), always return a full match for objectClass.
2001-11-30 01:21:52 +00:00
Howard Chu
295e14bd54
Renamed BDB_ID2ENTRY_PAGESIZE to just BDB_PAGESIZE; set it on each database
...
instead of just the id2entry db. It helps. I also found that tweaking the
environment (set_lg_bsize 2MB; set_cachesize 2MB) helps but those can be
taken care of in a DB_CONFIG file. Tweaked the bdb_bt_compare function; it
really only needs to be set on little-endian machines. (On big-endian machines
a lexical sort gives the same result as an integer sort.) Moved the final
checkpoint back to the dbenv_close, I think this leaves a cleaner log file.
2001-11-28 20:48:06 +00:00
Howard Chu
24d1ab848c
Added experimental support for DB_DIRTY_READ.
2001-11-28 03:11:04 +00:00
Howard Chu
5d8f2b8ba6
Cleanup a while() loop.
2001-11-27 22:10:01 +00:00
Kurt Zeilenga
2ac7c91cae
Replace existing SLAP_MR_ matching flags with:
...
SLAP_MR_ASSERTION_SYNTAX_MATCH
SLAP_MR_VALUE_SYNTAX_MATCH
SLAP_MR_VALUE_SYNTAX_CONVERTED_MATCH,
add supporting evaluation macros, and update code as needed.
Misc other code cleanup included.
2001-11-27 21:59:56 +00:00
Howard Chu
5c7a7998a9
Set the id2entry database pagesize to BDB_ID2ENTRY_PAGESIZE to avoid
...
overflow/fragmentation. (This is now 16K vs default 4K.) It turns out
that the entries' on-disk format is quite space-inefficient, storing
4 bytes per pointer or integer when typically >50% of those bytes are
zero. Oh well. It's about a 2:1 space increase over ldbm now, vs 4:1
before when all the entries were overflowing the 4K pages.
2001-11-27 12:36:52 +00:00
Howard Chu
b45133c958
Eliminated nextid database. id2entry database is now maintained in numerical
...
order, so the lastid is always the same as the last entry's ID. This is
an incompatible db file change.
2001-11-27 10:15:23 +00:00
Howard Chu
0a25cddcf3
Fix segv in slapcat. Tool must use be_entry_return to free entries
...
returned from the backend.
2001-11-27 09:34:53 +00:00
Howard Chu
91f47e0ee6
Add #define SLAP_BDB_ALLOW_DBNOTXN to control dbnotxn keyword
2001-11-27 04:35:58 +00:00
Kurt Zeilenga
d5d801d152
Misc code cleanup
2001-11-27 03:41:03 +00:00
Howard Chu
323689da57
Added "dbnotxn" config keyword. If present, back-bdb uses DB_INIT_CDB
...
(Concurrent Data Store mode) instead of DB_INIT_TXN. Faster, but tends
to impede writers.
2001-11-27 02:35:20 +00:00
Howard Chu
78066c08c0
Fixed exit code processing. passwd.c never committed its password change
...
tranasaction.
2001-11-27 01:09:19 +00:00
Howard Chu
763faf21b1
Some tweaks to cut down on IDL stack usage. idl_intersection and idl_union
...
now take only two arguments instead of 3, overwriting the result onto the
first argument. (glibc2.0.7 defaults to a 2MB stack per thread; 3 IDLs at
1.5MB plus various other runtime overhead is enough to trash the stack.)
Also pass in a tmp IDL from search_candidates instead of allocating it in
each candiate function.
2001-11-26 19:32:39 +00:00
Howard Chu
df28982b43
More indexing fixes. Now passes tests 0-7, 10, and 11.
2001-11-24 12:41:54 +00:00
Howard Chu
13696c0b22
Fixed exit condition code checks and log msg, was returning fail on success.
2001-11-24 12:28:52 +00:00
Howard Chu
ad5e8c9e16
Removed unused "range" argument from indexing functions. Fixed more
...
bugs in indexing. Uncommented #define to turn on indexing in back-bdb.h.
It looks like it's working.
2001-11-24 03:46:02 +00:00
Howard Chu
939028b43f
Fixed initialization bug.
2001-11-24 03:44:28 +00:00
Howard Chu
02b464b684
Fix initialization bugs
2001-11-24 03:43:52 +00:00
Howard Chu
49e3e8899d
Fix typo that prevented rootdn logins.
2001-11-24 02:40:59 +00:00
Howard Chu
5657b6ec4e
equality_candidates: s/BDB_IDL_RANGE_CPY/BDB_IDL_CPY/
2001-11-17 04:51:08 +00:00
Howard Chu
02936edd27
First pass at indexing cleanup. Both filterindex.c and search.c now
...
compile cleanly when BDB_FILTER_INDICES is defined, but I have not
yet seen whether any of it actually works. In particular, I don't
understand the "range" argument to the candidate functions...
2001-11-17 04:41:47 +00:00
Pierangelo Masarati
d51dc13a0b
moved the empty dn static entry into a global const object
2001-11-16 17:05:32 +00:00
Pierangelo Masarati
4c283cfe65
update dn can add/modrdn/delete entries rooted at '' (according to ACLs)
2001-11-16 15:06:18 +00:00
Pierangelo Masarati
563694039f
check children access for old and new parent when = ''
2001-11-16 15:00:03 +00:00
Howard Chu
a3ded4782e
Changed AttributeType.sat_cname from char * to struct berval.
...
Forced SLAP_USE_AD code, removed ifdefs of old code. filterindex.c is
still badly broken when BDB_FILTER_INDICES is defined, working on that...
2001-11-16 08:18:58 +00:00
Pierangelo Masarati
0ebba25d99
hack to make '' base work; please check side-effects
2001-11-14 17:27:24 +00:00
Pierangelo Masarati
098c4a15d4
fix a couple of misformats
2001-11-14 16:17:30 +00:00
Pierangelo Masarati
a8437c2038
non-root add/delete of entries rooted at '' checks children write permission (forward port from back-ldbm)
2001-11-14 16:09:33 +00:00
Kurt Zeilenga
525cd6f783
Port ITS#1430 changes from ldbm
2001-11-13 19:45:47 +00:00
Howard Chu
0b037b5566
Added bdb_attribute and bdb_group ACL support routines
2001-11-12 20:52:25 +00:00
Howard Chu
efb6c24f6b
Fix missing case
2001-11-12 20:28:23 +00:00
Pierangelo Masarati
afd0037eda
Fixes ITS#1433
2001-11-12 17:12:43 +00:00
Kurt Zeilenga
f8611a1296
Don't use indices to support not [!] filters.
...
Use pres indices to support LE/GE [<=,>=] filters.
2001-11-05 17:25:44 +00:00
Howard Chu
e47e31ad0a
Fix for dbnosync - DB_TXN_NOSYNC is not a valid flag for dbenv_open,
...
must be set later using dbenv_set_flags.
2001-11-05 07:01:12 +00:00
Howard Chu
09cddf9188
Ported referral patches from back-ldbm. I believe search.c still needs
...
the patch from ITS#1289 to be ported here.
2001-11-05 06:24:11 +00:00
Julio Sánchez Fernández
aee598dba7
Remove bogus refusal to index ;binary attributes. Notice that I left
...
in a check. This way you have to say:
index userCertificate eq
If we remove it, we could say:
index userCertificate;binary eq
I have not tried the latter.
2001-10-23 13:42:37 +00:00
Julio Sánchez Fernández
bf5ea315b6
Compares get values in the matching rule syntax (see RFC2251, 4.1.7),
...
so we need to tell value_find about this.
2001-10-23 09:48:18 +00:00
Howard Chu
0185b79559
Don't free entries since the tools realloc the buffers.
2001-10-22 15:58:44 +00:00
Howard Chu
11d884b8cf
Fix some uninitialized variables
2001-10-22 15:57:58 +00:00
Howard Chu
c05de965b5
Moved binary entry_encode/entry_decode into main code. Removed lber version.
2001-10-22 14:07:42 +00:00
Howard Chu
0e16f6acf9
Moved AttributeDescription caching into main code:
...
Changed AttributeDescription.{ad_cname,ad_lang} to struct berval everywhere
Deleted ad_free() everywhere
Added ad_mutex to init.c
The AttributeDescriptions are in a linked list hanging off of the
corresponding AttributeType.
2001-10-22 13:23:05 +00:00
Howard Chu
ce6243f009
Patches for modify/modrdn to work with BDB_USE_BINARY_RW.
2001-10-19 20:28:48 +00:00
Howard Chu
98d6a4f2bf
Added new bdb_encode/bdb_decode functions, must #define BDB_USE_BINARY_RW
...
to activate. The bdb_decode works in-place on the db data. Add/Search are
OK, I think Modify needs to be tweaked. Don't use this yet unless you want
to help finish it.
2001-10-19 11:53:15 +00:00
Kurt Zeilenga
d6730e5f50
BDB updates... haven't had a chance to work on this for a while,
...
committin what I have so that someone else might be able to work it.
2001-10-13 16:55:54 +00:00
Kurt Zeilenga
78adfde54e
BDB_INDEX code does no harm (but no good yet, not used by filters yet).
2001-10-05 20:12:16 +00:00
Kurt Zeilenga
9f1fc48659
Another round. BDB_INDEX almost ready for functional testing.
2001-10-05 17:00:21 +00:00
Kurt Zeilenga
96e0038832
Initial idl fetch code, undef BDB_INDEX for now, other cleanup
2001-10-05 01:19:58 +00:00
Kurt Zeilenga
5160da05e5
Add some initial BDB_INDEX code... needs much work.
2001-10-04 22:29:34 +00:00