Kurt Zeilenga
44725e7303
use BER_BVNULL
2004-04-07 04:11:43 +00:00
Kurt Zeilenga
2fcaa15b90
First rounds of backend/database flag cleanup
2004-04-05 21:00:16 +00:00
Howard Chu
113870c194
Revert to original code
2004-03-06 19:15:39 +00:00
Howard Chu
ea0d619dae
Store IDs in BeigEndian format on disk
2004-03-06 12:41:29 +00:00
Howard Chu
18bb805736
Fix prev commit
2004-03-05 15:40:37 +00:00
Howard Chu
896beebadc
unifdef SLAP_IDL_CACHE
2004-03-05 13:43:18 +00:00
Kurt Zeilenga
3c598e89fb
Happy new year
2004-01-01 19:15:16 +00:00
Jong Hyuk Choi
fa2aa5bb25
fix for concurrent persistent searches
2003-12-11 00:04:52 +00:00
Kurt Zeilenga
38ccdaf7a3
unifdef -DLDAP_CONTROL_PAGEDRESULTS (as it is always defined)
2003-12-08 18:16:07 +00:00
Howard Chu
b5052153c2
Minor cleanup
2003-12-07 03:59:54 +00:00
Kurt Zeilenga
9d811eb1fa
Notices
2003-11-28 21:08:20 +00:00
Howard Chu
e61748780b
ITS#2816 init_module for dynamic HDB
2003-11-13 21:49:48 +00:00
Howard Chu
76dd6bb6da
Revert to previous behavior:
...
always use DB_AUTO_COMMIT when opening a database, don't make it
dependent on an in-progress transaction
use mutex instead of DB lock for db access.
2003-09-25 00:27:22 +00:00
Howard Chu
10811b6f51
Clarify/standardize library version mismatch error messages
2003-09-12 00:54:21 +00:00
Jong Hyuk Choi
c36f32a9e4
slaptool update for LDAP Sync replication
2003-08-30 15:19:35 +00:00
Jong Hyuk Choi
090ac0a772
unifdef LDAP_SYNC and LDAP_SYNCREPL
2003-08-27 22:16:04 +00:00
Kurt Zeilenga
b54780f940
Add initial support for modify/increment. No over/under flow detection.
...
Currently discovered via a "feature", but should use a control.
Start of a control made, but needs to be better integrated (with
auto use in ldapmodify(1)).
2003-08-07 16:42:40 +00:00
Jong Hyuk Choi
262f8bf11f
LCUP primitive routines removed
2003-06-27 17:39:48 +00:00
Jong Hyuk Choi
e70377b875
IDL cache AVL tree initialize
2003-06-26 06:24:24 +00:00
Howard Chu
aa3b69eb32
ITS#2440 unmunge init_module names
2003-06-12 22:25:20 +00:00
Kurt Zeilenga
a8e859a401
Add server side assert control support.
2003-06-10 04:44:41 +00:00
Howard Chu
6aa3637545
Added SLAP_TOOL_READMAIN and SLAP_TOOL_READONLY slapMode flags. The rw
...
arg to tool_entry_open comes too late for back-bdb to use.
2003-05-11 07:03:48 +00:00
Howard Chu
6f461690c1
Function renaming, make internal funcs static, etc.
2003-04-23 06:34:55 +00:00
Howard Chu
68822b1e15
Trim dead BDB_HIER stuff
2003-04-22 17:06:35 +00:00
Howard Chu
d290145776
memory context tweaks
2003-04-21 18:28:38 +00:00
Howard Chu
6fd41cd254
Add shm_key config keyword to use shared memory for BDB environment
...
Unmeasurable performance difference on my tests, but who knows...
2003-04-18 09:43:22 +00:00
Jong Hyuk Choi
2dbcd890b8
Caching non-existing index entries in the IDL cache - caching keys only
2003-04-18 00:35:11 +00:00
Howard Chu
377bccbc6c
Hierarchical cache management.
2003-04-16 16:23:36 +00:00
Howard Chu
ca9bb44089
Free IDL_CACHE locks
2003-04-16 01:04:00 +00:00
Pierangelo Masarati
06a99afbdb
free cache only if required
2003-04-08 23:22:10 +00:00
Jong Hyuk Choi
b1b36ae75f
bdb->bi_idl_tree_lrulock initialize
2003-04-08 16:30:56 +00:00
Jong Hyuk Choi
420210a2a3
IDL cache locking change (mutex -> rwlock)
2003-04-08 06:57:07 +00:00
Howard Chu
e8c58b4e7f
Major API change - (SLAP_OP_BLOCKS) All request parameters are
...
consolidated into the Operation structure. All reply parameters
are consolidated into the new SlapReply structure. Most operations
now have identical call signatures... Changes are not #ifdef'd,
revert to -r NO_SLAP_OP_BLOCKS if necessary to back out.
2003-03-30 09:03:54 +00:00
Howard Chu
0be6cb5a67
Deleted bi_database_mutex, use DB_LOCK instead. Changed bdb_locker_id to
...
lookup the threadctx if no Op * is provided. (bdb_db_cache doesn't know
its thread context when it acquires a locker ID.)
2003-03-29 05:15:48 +00:00
Howard Chu
99950e4fe4
Deleted BackendInfo->bi_acl_attribute, bi_acl_group.
...
Replaced with bi_entry_get_rw.
Implemented for back-bdb, back-ldbm, back-ldap.
2003-03-26 11:50:03 +00:00
Howard Chu
23d69c1d1f
Still need DB_AUTO_COMMIT flag
2003-03-22 16:21:44 +00:00
Howard Chu
a0c58e5f40
Don't use DB_AUTO_COMMIT when opening a database
2003-03-18 00:04:16 +00:00
Howard Chu
44be38c0f0
ITS#2371, fix BDB_SUBDIRs
2003-03-13 15:53:19 +00:00
Jong Hyuk Choi
2e31af9ca1
AVL delete upon shutdown (ITS#2367)
2003-03-12 16:34:17 +00:00
Howard Chu
bbad1de8e1
Added lutil_passwd_init, _destroy, _add for dynamically adding passwd
...
schemes. Declarations in lutil.h require lutil.h never be included before
lber.h, always after.
2003-03-11 05:58:53 +00:00
Howard Chu
a0b1fb1f9c
Multiple-suffix fail msg should be logged at ERR/ANY, not ARGS.
2003-03-04 21:17:31 +00:00
Kurt Zeilenga
1a14def903
Use function pointers to get at backend routines.
2003-02-14 20:51:35 +00:00
Kurt Zeilenga
48d47954a6
Rework #ifdef'ing of expermental controls to ease release engineering
...
using LDAP_DEVEL (to indicate experimental) to enable experimental features
(true for HEAD unless LDAP_REL_ENG is defined)
2003-02-08 21:53:05 +00:00
Jong Hyuk Choi
85b1783d5c
LDAP Sync Operation (draft-zeilenga-ldup-sync) as a groundwork for an LDAP replication design
2003-02-05 07:37:02 +00:00
Howard Chu
23c575805a
Disallow multiple suffixes by default. Otherwise subtree index optimization
...
breaks. #define BDB_MULTIPLE_SUFFIXES if you want multiple suffix support.
If you use it, subtree indexing will slow down by factor of 2.
2003-01-30 22:00:16 +00:00
Hallvard Furuseth
6a51371fc5
Silence gcc warnings (signed vs. unsigned, implicit declarations, unused vars).
2003-01-19 15:03:25 +00:00
Kurt Zeilenga
6939c53170
Happy new year
2003-01-03 20:20:47 +00:00
Howard Chu
06c223991f
Fix previous commit, compare must return signed result
2002-12-18 07:55:27 +00:00
Kurt Zeilenga
75757a5c82
Don't reeval expression
2002-12-17 05:25:05 +00:00
Howard Chu
349e05ff4d
Added config keyword "searchstack" for setting search stack cache depth.
...
Default is still 16.
Added IDL caching, modified from ITS#2182. Uses "idlcachesize" config
keyword. Code is #ifdef'd, currently defined, with default cache of 0.
2002-12-10 20:33:49 +00:00
Kurt Zeilenga
8754c8f2a3
#unifdef paged results, remove lint
2002-11-28 04:38:41 +00:00
Pierangelo Masarati
c354bb23bf
Support for RFC 2696:
...
LDAP Control Extension for Simple Paged Results Manipulation
contributed by Lynn Moss <lynnmoss@us.ibm.com> (ITS#2189)
applied with changes.
2002-11-21 02:16:53 +00:00
Pierangelo Masarati
498d1f043d
silence warnings; fix messages
2002-11-10 20:00:44 +00:00
Pierangelo Masarati
76bf91f553
remove #ifdef SLAP_FILTER_HASSUBORDINATES
2002-11-10 19:48:36 +00:00
Pierangelo Masarati
7b3f889ec1
fix hasSubordinate filtering; now it can be safely turned on
2002-10-26 16:18:31 +00:00
Jong Hyuk Choi
8074294f1d
LCUP persistent search code drop
2002-10-25 17:51:30 +00:00
Howard Chu
104f8cc409
Simpler fix for NO_THREADS
2002-09-19 06:34:53 +00:00
Howard Chu
6fa0363d09
Don't set bdb yield with NO_THREADS
2002-09-19 01:38:00 +00:00
Howard Chu
919274432b
Fixes for NO_THREADS
...
Use a per-env locker ID
Always set lock_detect, since we allow slapadd etc. concurrently
Also removed unused lock_detect_task code. lockdetect config keyword only
needs <policy>, no <seconds> argument.
2002-09-19 01:13:27 +00:00
Kurt Zeilenga
0ad91236fd
Add LDAP_CONTROL_CLIENT_UPDATE to list of supported controls
2002-09-15 22:28:38 +00:00
Howard Chu
1263e40b55
Set BDB's global allocators to ber_*, don't bother with the per-env setting.
2002-09-12 02:47:18 +00:00
Howard Chu
35e8b8325d
Unifdef BDB_IDL_MULTI.
2002-09-10 04:20:45 +00:00
Pierangelo Masarati
aea52e5bc9
define macros for appropriate sizing of lutil buffers
2002-08-31 10:48:02 +00:00
Howard Chu
cd60deb4a9
OS/390 EBCDIC support
2002-08-22 04:39:59 +00:00
Howard Chu
3b9f4a82ee
Added support for BDB 4.1.17
2002-08-22 04:00:06 +00:00
Howard Chu
9fad71dc9b
Never use DB_RECOVER flag when opening DB_ENV. Recovery must be done
...
manually. Automatic recovery would interfere with gentlehup restarts.
2002-08-11 00:30:46 +00:00
Howard Chu
44ac8a3564
Plug config leaks
2002-08-07 08:43:52 +00:00
Howard Chu
771f70eb0f
Fix ITS#1994, Windows heap consistency
2002-08-03 02:57:52 +00:00
Howard Chu
e514685144
Tweak: For slap tools, don't set DB_RECOVERY flag when opening DB environment.
...
This allows slapcat to run while slapd is running, otherwise causes db
corruption.
2002-07-13 00:18:15 +00:00
Julius Enarusai
6107ba67d2
Coverted LDAP_LOG macro to use subsystem ID int values instead of string values
2002-07-11 20:33:24 +00:00
Howard Chu
3831d98237
Turn these functions on again. Need backend_attribute for SASLauthz stuff.
...
Fix to work with NULL op.
2002-05-07 22:35:01 +00:00
Kurt Zeilenga
8c152396b9
Matched Values implementation (ITS#1776) based upon submission
...
form Mikhail Sahalaev <M.Sahalayev@pgr.salford.ac.uk>.
Further work needed:
add testxxx-matchedvalues
rework ldapsearch(1) portion of patch to generalize use of options
---
Copyright 2001, Mikhail Sahalaev, All rights reserved.
This software is not subject to any license of University Of
Salford.
Redistribution and use in source and binary forms are permitted
without restriction or fee of any kind as long as this notice
is preserved.
2002-05-02 18:56:56 +00:00
Howard Chu
7fae7fe155
Changed be_[n]suffix, be_[n]suffixAlias to BerVarray. No more bvec's anywhere.
2002-05-01 18:50:14 +00:00
Jong Hyuk Choi
b7f0983efa
Hallvard B. Furuseth's patch for cache lock and mutex
2002-04-16 14:03:13 +00:00
Jong Hyuk Choi
efa7b93b23
concurrent cache access: separation of cache lock (reader/writer) and lru lock (mutex)
2002-04-15 16:40:04 +00:00
Pierangelo Masarati
50baa90139
port hasSubordinates handling to back-bdb
2002-03-23 11:04:09 +00:00
Julius Enarusai
5af8610ba0
Added LDAP_LOG messages
2002-03-19 17:44:11 +00:00
Kurt Zeilenga
348e489b35
#ifdef experimental controls
2002-02-18 19:48:27 +00:00
Kurt Zeilenga
0006ec0a46
Revert most of last change
2002-02-12 01:30:35 +00:00
Kurt Zeilenga
488862105f
Use UUID to generate a GID for txn_prepare. Based upon submission
...
from Jong Hyuk Choi <jongchoi@us.ibm.com> (ITS#1585 for ITS1575).
2002-02-11 17:45:39 +00:00
Kurt Zeilenga
4554557171
Move BDB backend initialization to bdb_open. bdb_initialize()
...
shouldn't do much more than register callbacks.
2002-02-11 17:31:09 +00:00
Kurt Zeilenga
6df9b54592
Switch to openldap-data directory
2002-02-02 06:25:05 +00:00
Kurt Zeilenga
b57c11f4bd
BDB_ALIASES and BDB_SUBENTRIES cleanup
2002-01-29 04:53:47 +00:00
Kurt Zeilenga
4f0e4f60bd
Add first cut BDB no-op control support.
2002-01-29 00:02:27 +00:00
Kurt Zeilenga
98a2c60c3a
Delete CDB (no transactions) support
2002-01-28 22:57:50 +00:00
Kurt Zeilenga
14662be692
Add whoami extended operation.
...
Add no-op control (needs backend implementation)
Updated modify password extended option API
Kludged control infrastructure to support frontend only controls
2002-01-28 20:25:30 +00:00
Howard Chu
713e6beb8d
Entry caching. Based on ITS#1545 from Jong Hyuk Choi, jongchoi@us.ibm.com
2002-01-25 07:19:01 +00:00
Kurt Zeilenga
dc0f90d36d
Set lock detector to DEFAULT, not NORUN.
...
Clean up some error handling
2002-01-21 08:19:28 +00:00
Kurt Zeilenga
f868e4b34e
ITS#1541 fix.
2002-01-20 17:27:53 +00:00
Howard Chu
7db33f87a9
Do deadlock detection on any conflict, instead of in a separate thread
2002-01-18 13:28:07 +00:00
Howard Chu
5c2bc277b8
In db_destroy, cannot checkpoint a NULL dbenv.
2002-01-17 10:05:04 +00:00
Howard Chu
f2f6c516ab
DB_NODUPDATA is not a valid open flag
2002-01-17 09:48:44 +00:00
Kurt Zeilenga
492762f1c5
Don't use BDB group/attribute callbacks as they may cause deadlock.
...
Add code to bdb_attribute and bdb_group where use TXN id and to
provide error, but need to rework callers (and their callers) to
ensure error is properly bubbled up to the backend operation routine
handling the transaction. Ugh.
2002-01-17 03:58:52 +00:00
Kurt Zeilenga
d2f5d75885
Remove unused deprecated DN routines.
...
Only dn_validate, dn_normalize, and dn_parent remain (for now).
2002-01-16 00:16:51 +00:00
Kurt Zeilenga
13af7fb073
Misc. cleanup, remove lint, remove unused deprecated functions, etc.
2002-01-15 07:29:15 +00:00
Kurt Zeilenga
f57057ee01
Add system schema flags to backends supporting system schema.
2002-01-11 18:26:17 +00:00
Kurt Zeilenga
0e2af54a3f
Update copyright statements
2002-01-04 21:17:25 +00:00
Howard Chu
de97928160
Remove abandon cruft
2002-01-01 11:38:30 +00:00
Kurt Zeilenga
2dd27b0786
More struct berval DNs
2001-12-25 19:48:26 +00:00
Howard Chu
56bc0b64df
Fix - don't free constant database names
2001-12-20 08:47:32 +00:00
Howard Chu
773b3aff16
more cleanup from jon@symas.com
2001-12-18 04:52:55 +00:00
Howard Chu
335294e190
More cleanup for bdb_db_close
2001-12-15 08:11:59 +00:00
Kurt Zeilenga
abd9be4def
Remove lint and misc MSVC updates
2001-12-09 02:34:45 +00:00
Kurt Zeilenga
e2173e3c20
Disallow duplicate duplicate data
2001-12-08 04:30:23 +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
66266f9c25
Bare minimum changes to support BDB 4.0
2001-12-07 05:05:00 +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
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
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
0b037b5566
Added bdb_attribute and bdb_group ACL support routines
2001-11-12 20:52:25 +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
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
3120d37951
More changes to let BDB build without LDBM.
2001-10-04 06:34:03 +00:00
Kurt Zeilenga
191853eb51
An incremental step.
2001-10-03 23:28:20 +00:00
Kurt Zeilenga
8c758b34f8
Fix build errors
2001-09-26 01:54:39 +00:00
Kurt Zeilenga
0bcc892fdf
Fix basic operations
2001-07-31 04:24:29 +00:00
Kurt Zeilenga
ca7ba1a3fd
Fix slapadd crash when only a subset of databases have been initialized.
...
Likely should have a general solution to this.
2001-07-31 00:16:44 +00:00
Kurt Zeilenga
492bb0263f
Fix thread handling and error printing
2000-10-01 19:21:07 +00:00
Kurt Zeilenga
bd9e1b772c
Fix no_threads build
2000-09-30 01:04:43 +00:00
Kurt Zeilenga
283a8f1b4f
Add dead lock detection thread.
2000-09-29 00:18:29 +00:00
Kurt Zeilenga
160bf00975
Disable debugging
2000-09-28 22:25:19 +00:00
Kurt Zeilenga
373479e5b8
Mostly working modify
2000-09-28 00:02:47 +00:00
Kurt Zeilenga
ddb1124e42
Rough in extended ops, modify, and modrdn.
...
General code cleanup.
2000-09-27 22:28:59 +00:00
Kurt Zeilenga
ebae2e5c62
Rough in passwd and referral routines
...
add diag and fix a few idl bugs
2000-09-26 03:47:56 +00:00
Kurt Zeilenga
11797cdbeb
Fix initialization, add additional diagnostics
2000-09-26 00:12:31 +00:00
Kurt Zeilenga
c182511f91
Add bdb_bind, clean up init, s/Backend/BackendDB/
2000-09-25 23:41:16 +00:00
Kurt Zeilenga
6a74325e5d
Clean up debug messages
2000-09-25 21:58:41 +00:00
Kurt Zeilenga
61f5f03a23
Disable sub directory support for now
2000-09-25 21:30:15 +00:00
Kurt Zeilenga
e50c9b1588
Add minimal config support
2000-09-25 21:10:21 +00:00
Kurt Zeilenga
c3ab074c00
Update build environment for back-bdb
2000-09-25 20:16:19 +00:00
Kurt Zeilenga
ec1f989c79
Finish search rough in (w/o alias nor indexing support)
2000-09-25 19:59:45 +00:00
Kurt Zeilenga
3874e8571d
Add dn2entry.c
2000-09-24 22:48:13 +00:00
Kurt Zeilenga
68a5db572c
rough in an add/delete and deadlock avoidance
2000-09-23 23:15:40 +00:00
Kurt Zeilenga
aaab54e142
Add bdb_add() and supporting routines
2000-09-22 06:46:32 +00:00
Kurt Zeilenga
2b82d4f486
remove lint
...
update bdb codes
2000-09-22 01:40:57 +00:00
Kurt Zeilenga
95627d674a
Add dn2id code
...
Add idl_insert
2000-09-20 07:21:09 +00:00
Kurt Zeilenga
7ab0916488
Reply on DB_CONFIG for tuning...
2000-09-20 02:01:05 +00:00
Kurt Zeilenga
67e3f97097
Add new nextid code.
2000-09-19 20:13:41 +00:00
Kurt Zeilenga
22e739b736
Add rough implementation of tool callbacks.
2000-09-19 18:08:04 +00:00
Kurt Zeilenga
fe186a9c8f
Add BDB errcall
2000-09-19 01:59:08 +00:00
Kurt Zeilenga
b0f3bcb552
Don't set DB_PRIVATE yet.
2000-09-18 21:51:19 +00:00
Kurt Zeilenga
c1fdf4587c
Add errpfx and errcall
2000-09-18 21:35:08 +00:00
Kurt Zeilenga
da5da64ef8
Add set_*_dir calls
2000-09-18 21:19:19 +00:00
Kurt Zeilenga
4077211117
Fix up back-bdb framework
2000-09-18 20:03:41 +00:00
Kurt Zeilenga
583cbc8c25
Framework for back-bdb
2000-09-18 18:51:07 +00:00