Howard Chu
ef0b308bea
Changed backglue configuration. Added noSubordinates arg to select_backend
...
to deal with glued subordinates.
2001-12-10 12:09:40 +00:00
Kurt Zeilenga
30831a4012
misc cleanup
2001-12-09 18:57:46 +00:00
Kurt Zeilenga
abd9be4def
Remove lint and misc MSVC updates
2001-12-09 02:34:45 +00:00
Howard Chu
109307547e
Clean up bdb_entry_release / bdb_entry_return
2001-12-09 01:14:32 +00:00
Howard Chu
21c5674d34
Fix previous commit...
2001-12-08 13:07:01 +00:00
Howard Chu
fd93e0721b
Cleanup previous commit
2001-12-08 11:15:55 +00:00
Howard Chu
ad9d17d537
Added dn_rdnlen. Fixed rdn leak in limits.c.
2001-12-08 11:08:26 +00:00
Howard Chu
e2c2de11c3
Converted all use of dn_parent to the in-place version. (Fixed a pdn leak
...
in back-sql along the way.)
2001-12-08 10:37:42 +00:00
Howard Chu
a06bc9007c
Switched to dn_parent1, cleaned up dn2id_add/delete
2001-12-08 10:10:04 +00:00
Howard Chu
2721df21d4
Changed be_nsuffix from char ** to struct berval **, removed nsufflen
2001-12-08 05:17:31 +00:00
Howard Chu
55a217d9ae
Changed be_nsuffix from char ** to struct berval ** to eliminate strlen's
2001-12-08 05:15:58 +00:00
Kurt Zeilenga
e2173e3c20
Disallow duplicate duplicate data
2001-12-08 04:30:23 +00:00
Howard Chu
840a8c95ed
Fix typos in previous commit
2001-12-08 01:16:10 +00:00
Kurt Zeilenga
d46252fb21
Port reference scope fix from back-ldbm
2001-12-07 22:41:43 +00:00
Howard Chu
505a8693e6
Some fixes for BDB_IDL_MULTI. Experimental back-hdb code.
2001-12-07 12:38:25 +00:00
Howard Chu
1d9818a8da
Re-introduce BDB_ID2ENTRY_PAGESIZE. Even if the index databases can get
...
by on 4K pages, the id2entry database still needs more (16K).
2001-12-07 07:07:55 +00:00
Howard Chu
d0c0dfcce6
Minor fixes for BDB_IDL_MULTI
2001-12-07 06:48:38 +00:00
Howard Chu
efa14463ec
Missed a spot where root DN_SUBTREE index was still getting written.
2001-12-07 06:48:12 +00:00
Howard Chu
66266f9c25
Bare minimum changes to support BDB 4.0
2001-12-07 05:05:00 +00:00
Howard Chu
0552b1c53f
NT updates from jon@symas.com.
2001-12-07 04:03:25 +00:00
Howard Chu
a19a5d8c15
When using BDB_IDL_MULTI, there are no longer any issues with storing
...
large IDLs. Concurrency is improved by using as small a page size as
possible. So, set the pagesize back to the default 4096 in this case.
2001-12-07 01:40:08 +00:00
Howard Chu
11b3c142e4
Fix for BDB_IDL_MULTI to work.
2001-12-06 14:15:47 +00:00
Howard Chu
859e283834
Experimental index management. Uncomment BDB_IDL_MULTI in back-bdb.h
...
to activate. Needs to check limits in bdb_idl_insert_key, will get to
that later.
2001-12-06 13:20:18 +00:00
Howard Chu
6a5a30ec34
Fix previous commit
2001-12-06 03:29:23 +00:00
Howard Chu
6e0861b671
Minor rearrangement, give pdn to dn2id_add to avoid getting it twice.
2001-12-06 03:26:37 +00:00
Howard Chu
52beecbdf4
Fix, index databases were not being closed on shutdown.
2001-12-06 03:24:09 +00:00
Howard Chu
19c7fd49ca
tool_reindex now regenerates the dn2id index as well as the others.
2001-12-05 01:36:18 +00:00
Howard Chu
8697aa4b8d
Fixup bdb_entry_release now that entry_decode uses two memory blocks
...
instead of just one.
2001-12-05 00:24:13 +00:00
Kurt Zeilenga
493b415255
Rework indexing code, removing "autolang" and making
...
"subtypes" and "lang" default behavior.
2001-12-05 00:06:03 +00:00
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
Kurt Zeilenga
3120d37951
More changes to let BDB build without LDBM.
2001-10-04 06:34:03 +00:00
Kurt Zeilenga
9b98f46a5e
Add prelim index code from LDBM, needs work...
2001-10-04 02:55:09 +00:00
Kurt Zeilenga
433eb73ef8
Add BDB_INDEX error handling
2001-10-03 23:49:38 +00:00
Kurt Zeilenga
3ad55b225e
Add error handling to BDB_INDEX code
2001-10-03 23:39:29 +00:00
Kurt Zeilenga
191853eb51
An incremental step.
2001-10-03 23:28:20 +00:00
Kurt Zeilenga
0135c8dbb1
Add BDB index config code
2001-10-03 21:11:52 +00:00
Kurt Zeilenga
292b6c8757
Replace #if 0 with #if MACRO
2001-10-03 20:34:00 +00:00
Kurt Zeilenga
86a680a4ec
Enable management of attribute indices. Not yet used by test_filter.
2001-10-03 20:20:29 +00:00
Pierangelo Masarati
8a3768276a
candidate check using new macro from Kurt
2001-10-02 19:15:05 +00:00
Kurt Zeilenga
773b1907d2
Add BDB_IDL_N() macro for ando
2001-10-02 19:04:12 +00:00
Pierangelo Masarati
becb7ff0ce
forward porting of time/size limits from back-ldbm (pending the definition of the most appropriate way to determine the number of candidates)
2001-10-02 12:00:01 +00:00
Pierangelo Masarati
4ac9b37db7
forward porting of empty parent dn checks from back-ldbm
2001-10-02 10:44:14 +00:00
Pierangelo Masarati
5544720505
forward porting of composite rdn handling from back-ldbm
2001-10-02 10:39:04 +00:00
Kurt Zeilenga
c45a6f5c23
Fix up binary search
2001-09-26 03:50:48 +00:00
Kurt Zeilenga
5f4d8a71e6
Use a 64MB stack (instead of a 64K on some systems) by default.
...
This should be tunable...
2001-09-26 02:35:41 +00:00
Kurt Zeilenga
8c758b34f8
Fix build errors
2001-09-26 01:54:39 +00:00
Kurt Zeilenga
37d44620a5
idl_check for back-bdb
2001-09-25 23:56:49 +00:00
Kurt Zeilenga
50223981d9
Fix typo
2001-07-31 07:53:21 +00:00
Kurt Zeilenga
b09727567d
Clean up
2001-07-31 04:55:14 +00:00
Kurt Zeilenga
60c4893b93
Last changes should have been #ifdef
2001-07-31 04:30:11 +00:00
Kurt Zeilenga
0bcc892fdf
Fix basic operations
2001-07-31 04:24:29 +00:00