Ben Collins
24697ea2fc
$Id update
1999-02-17 00:24:40 +00:00
Kurt Zeilenga
c2b7c9e2db
Add ac/errno.h and use other generic headers when available.
1999-02-16 18:07:19 +00:00
Kurt Spanier
39f0066db4
Addition of a new Concurrency Test fro testing slapd performance and
...
correctness of locking schemas in backends.
In back-bdb2 open NEXTID during startup and close at shutdown.
1999-02-15 10:49:20 +00:00
Kurt Zeilenga
a71f328831
Import Ben Collins <bcollins@debian.org> Back-TCL for SLAPD.
1999-02-14 19:20:14 +00:00
Kurt Spanier
548942edbe
BugFix and selection in the test-suite of the bdb2 backend-specific
...
slapd server timing via a new slapd command line option '-t'.
1999-02-12 15:22:43 +00:00
Kurt Spanier
2cf83d84ee
Server timing as a private feature of the bdb2 backend.
1999-02-12 14:36:16 +00:00
Kurt Spanier
6e63b58a3e
Update of back-bdb2 to KDZ's new entry lock schema.
...
Fix of a back-bdb2 --> back-ldbm leakage (==> new bdb2-specific DB file suffix).
1999-02-12 12:13:03 +00:00
Kurt Zeilenga
75ee1d8393
Update tools to print ID's using "%ld" instead of "%lu".
1999-02-11 21:26:57 +00:00
Kurt Zeilenga
2a20131eaa
Consistently use %ld for printing IDs. %lu was used in many cases.
...
I rather have NOID printed as "-1". It it could argued that ID
should be signed.
1999-02-11 18:19:52 +00:00
Kurt Zeilenga
c2c0d9687f
Complete entry_cmp() migration (remove rename macros).
1999-02-11 17:52:28 +00:00
Kurt Zeilenga
745a10f080
Update LDBM cache so that it manages it's own state.
...
cache_set_state() and state args are no history.
Move cache_entry_cmp() and friends to slapd/entry.c to allow sharing
of functions between backends.. Renamed to entry_cmp().
1999-02-11 17:46:56 +00:00
Kurt Zeilenga
88c43a1e6e
Move LDBM-backend specific fields of Entry struct into a private struct.
...
The new e_private field can be used for any backend purpose. In LDBM,
it's used to point th the private entry info struct. The LDBM entry
info struct is only visible to the LDBM cache.
WARNING: This change has not be ported to other backends! Breakage is likely.
1999-02-10 18:28:25 +00:00
Kurt Spanier
529caeddd0
Elimination of un-used code in bdb2i_cache_open and friends.
...
Provision for a bdb2 backend-specific DB file suffix.
Fix of the double-open of backend types.
1999-02-10 13:19:11 +00:00
Kurt Zeilenga
191752c9a7
Fix modrdn bug in back-bdb2 as well. Probably should move
...
dn rewriting to frontend dn.c function.
1999-02-09 18:07:01 +00:00
Kurt Zeilenga
fc022ed0d4
Patch modrdn to remove extra space.
1999-02-09 17:58:13 +00:00
Kurt Zeilenga
eb8dcb6e21
Add a field to count the number of databases per type (bi_nDB) to
...
the backend type info structure. Use this filed to control open
and close such that backend's without databases are skipped.
1999-02-09 17:41:56 +00:00
Kurt Spanier
42f6e78dd4
Integration of the BDB2 backend into the new init/startup/shutdown schema.
...
Integration into ./configure ( --enable-bdb2 ).
Adaptation of the test-suite ( 'make' -> ldbm; 'make bdb2-local' -> bdb2 ).
Minor fixes in slapd/libldbm.
1999-02-08 11:42:14 +00:00
Kurt Zeilenga
36a06168c5
Fix backend_destroy to call bi_destroy instead of bi_close
1999-02-07 18:24:05 +00:00
Kurt Zeilenga
587535a310
Really fix those reader/writer lock asserts...
1999-02-07 17:57:50 +00:00
Kurt Zeilenga
7eaae29f6f
Fix cache asserts on entry writer locks.
1999-02-07 02:50:10 +00:00
Kurt Zeilenga
e6e28362a1
Move SIGNAL() calls to main so that any thread can accept async
...
signals aimed at the process.
1999-02-06 16:00:00 +00:00
Kurt Zeilenga
7f804b5c1b
Fix no backend type case in backend_init.
1999-02-06 15:56:14 +00:00
Kurt Zeilenga
dde7e3dfa6
Don't call idl_free() unless necessary.
1999-02-05 23:46:03 +00:00
Kurt Zeilenga
63f5ec8f8b
remove ;; typo
1999-02-05 17:39:38 +00:00
Kurt Spanier
d92b9d3c9e
Introduction of a new Berkeley DB version 2 (!) specific backend.
...
BEWARE: the backend will be compiled.
the backend will NOT be invoked, yet.
the backend CANNOT be invoked, yet, because it is NOT yet
integrated into the new initialization/startup environment
of the slapd server.
1999-02-05 16:23:03 +00:00
Kurt Spanier
8107ec91f0
Fix braindead signal handling in linux kernal threads.
...
First version with waiting on int to become 0; should be implemented
via conditional variable...
Fix of typos.
First anchor for new bdb2 backend.
1999-02-05 13:20:57 +00:00
Kurt Zeilenga
216049bd12
New Frontend->Backend Interface
...
Separates per backend type from per backend database initialization
and startup. Also supports per type / per backend shutdown.
New frontend startup/shutdown routines are also provided:
slap_init() slap_startup() slap_shutdown() slap_destroy()
New frontend->backend startup/shutdown is managed by:
backend_init() backend_startup() backend_shutdown backend_destroy
backend_init() now calls bi_init() to initial all function pointers
for the backend (excepting bi_init() which is now the only hardcoded
entry point). New entry points are detailed in slap.h struct
backend_info. backend_info is a per database type structure.
Besides the new startup/shutdown entry points, the new interface
also supports per backend type configuration options. One could have:
backend bdb2 (new Berkeley DB 2 backend)
bdb2_home /directory
database bdb2
...
*** This code is fairly experimental ***
*** Much cleanup and testing is still needed ***
see slap.h for details on struct backend_db and backend_info.
1999-02-05 09:03:47 +00:00
Kurt Zeilenga
2b8970a324
Fix forkandexec() prototype.
1999-02-04 19:01:21 +00:00
Will Ballantyne
44c5c21078
additional checks around derefAlias_r call:
...
check for alias problem
check for alias != entry
check for null entry in subsequent switch statement
1999-02-04 18:55:58 +00:00
Kurt Zeilenga
72400d11fc
Fix mutex initialization. new init function only has one argument.
1999-02-04 18:20:26 +00:00
Kurt Zeilenga
366701bdf7
Fix dbcache/entry lock deadlock. If dbcache lock is held, it's
...
okay to read and write LDBM specific fields (state, refcnt,
LRU. The id field, though is read-only once set.
cache_find_entry_dn2id(), hence, does not require any entry locks.
cache_find_entry_id() must do a entry_rdwr_trylock() and back
off if busy.
Add new rdwr lock code with trylock() functionality.
Implement entry_rdwr_trylock().
1999-02-04 18:00:50 +00:00
Kurt Zeilenga
6b05425d0f
Minor fixes to complete backout of initialization/startup changes.
1999-02-04 17:45:59 +00:00
Kurt Zeilenga
d27b2f811e
Backout recent initialization/startup changes in prep for new
...
frontend->backend interface.
1999-02-04 17:33:46 +00:00
Kurt Zeilenga
fc44d42c53
Backout startup/initialization changes in preparation for new
...
frontend->backend interface.
1999-02-04 17:28:49 +00:00
Kurt Zeilenga
c6882d4670
Remove rwlock diag messages.
1999-02-04 17:24:26 +00:00
Kurt Zeilenga
efce9cffb4
Use LDAP_ALIAS_DEREF_PROBLEM for all problem dereferencing aliases.
...
LDAP_ALIAS_PROBLEM is now only used if the alias itself is mangled.
1999-02-04 17:23:34 +00:00
Will Ballantyne
be9e28907e
inserted additional checks for null values, comments
...
fixed deadlocks
1999-02-04 00:21:57 +00:00
Kurt Zeilenga
5934367242
Another concurrency typo.
1999-02-03 18:32:25 +00:00
Kurt Zeilenga
7903584911
Use idl_fetch_one() to fetch single id_blocks instead of separate
...
ldbm_cache_fetch() codes.
1999-02-03 17:14:01 +00:00
Kurt Zeilenga
365f6bf69b
Fix double free of filter when bad.
1999-02-03 05:51:42 +00:00
Kurt Zeilenga
a3cf741ab7
Fix slapd/tool dependencies on libraries.
1999-02-03 05:25:04 +00:00
Kurt Zeilenga
368a507c9a
Plug leak of datum. Should be freed after use.
1999-02-03 05:00:41 +00:00
Kurt Zeilenga
ace9fb68c5
Fix ALLIDS bugs
...
Fix memory leaks
1999-02-03 04:45:08 +00:00
Kurt Zeilenga
16b3111ac7
Got that logic backwards...
1999-02-03 03:50:11 +00:00
Kurt Zeilenga
0c2ce661fb
first arg of ldbm_db_errcall could be a const char * instead of char *.
1999-02-02 23:15:45 +00:00
Kurt Zeilenga
40ba9bc80b
Don't try to free NULL idl. Did not cause a problem, though, as
...
idl_free() had insurance.
1999-02-02 22:46:21 +00:00
Kurt Zeilenga
92e71b459b
Hack up a quick bandaid to make things compile. Startup/Initialization
...
needs work.
1999-02-02 19:26:00 +00:00
Kurt Zeilenga
2b29521596
Fix statlog... debugging change got commit by mistake.
1999-02-02 14:06:23 +00:00
Kurt Spanier
442c7e7a7b
Added startup/shutdown routine for slapd back-ends.
1999-02-02 08:03:03 +00:00
Kurt Zeilenga
433e8ad645
Add a few comments to help detail some of these functions.
1999-02-02 03:40:19 +00:00