Howard Chu
e8c2414831
Preliminary sorted value support
2007-09-24 01:31:23 +00:00
Howard Chu
c4dbe1a274
Attribute/Modification value counters
2007-09-21 08:43:56 +00:00
Pierangelo Masarati
d92e8ad1f7
add helper for internal searchs for objectClass=*
2007-09-15 17:38:53 +00:00
Pierangelo Masarati
06e6e6c053
apply Howard's cleanup of database monitoring registration
2007-09-15 15:34:49 +00:00
Pierangelo Masarati
202080dfa1
enable unindexed searches monitoring ifdef LDAP_DEVEL
2007-09-12 21:26:10 +00:00
Howard Chu
40e796c547
ITS#5129 fix alock_close with Quick mode
2007-09-08 05:26:03 +00:00
Howard Chu
6a6adff86c
ITS#5129 disallow Quick mode if DB_CONFIG has changed
2007-09-08 04:59:34 +00:00
Pierangelo Masarati
9c437f4411
quote suffix (ITS#5128) and use it as much as possible to identify databases
2007-09-08 00:41:29 +00:00
Pierangelo Masarati
2da15f1013
remove experimental code as per ITS#4962 discussion
2007-09-07 12:33:21 +00:00
Pierangelo Masarati
ed12ff8fd3
parse unsigned as unsigned (ITS#5122)
2007-09-04 19:32:54 +00:00
Pierangelo Masarati
371bf8f803
blind fix: I assume we need to restore ors_scope
2007-09-04 19:31:47 +00:00
Pierangelo Masarati
c73520ec08
fix idl lru deletion of last entry (ITS#5121)
2007-09-04 19:01:55 +00:00
Howard Chu
75964a771f
Use IA5String for olcDbConfig to allow empty strings
2007-09-03 00:41:30 +00:00
Howard Chu
33f311d81f
Read DB_CONFIG file in server and tool mode, for config conversions
2007-09-02 23:53:29 +00:00
Pierangelo Masarati
c83b8b58a3
hide (experimental) schema
2007-09-01 16:01:29 +00:00
Pierangelo Masarati
e161e8efb6
fix test
2007-08-29 00:13:56 +00:00
Pierangelo Masarati
0bedad3b65
plug leak
2007-08-28 23:56:18 +00:00
Pierangelo Masarati
7c66952714
check for shutdown (need to add to other backends?)
2007-08-26 15:38:51 +00:00
Howard Chu
8367f0cfe4
revert prev commit, no gain
2007-08-26 14:37:12 +00:00
Howard Chu
ddc5c9f735
Just use read locks on the entry_db_lock
2007-08-26 13:49:35 +00:00
Pierangelo Masarati
071b77cf9d
better fix
2007-08-25 15:01:27 +00:00
Pierangelo Masarati
84143631ee
fix potential concurrency issue (not so potential, if we could regularly trigger it :)
2007-08-25 14:58:43 +00:00
Pierangelo Masarati
8f95ff260c
consistently use "tag=" instead of "op=" in debug messages
2007-08-25 00:10:52 +00:00
Howard Chu
4c7d288eb7
More for BDB 4.6 compatibility
2007-08-17 20:33:46 +00:00
Pierangelo Masarati
553d83c3c1
fix previous commit
2007-08-17 12:38:50 +00:00
Pierangelo Masarati
36111934a3
allow "traditional" behavior (more for ITS#4962; please debate)
2007-08-17 09:51:29 +00:00
Pierangelo Masarati
2f5bfba296
let req_modify_s and req_modrdn_s have a common portion to interoperate within slap_mods_opattrs() (ITS#5093)
2007-08-16 09:48:53 +00:00
Pierangelo Masarati
27428ac00e
uniformly exploit rootdn bind; add support for rootdn bind to backends that didn't have it (ITS#4962)
2007-08-16 09:38:15 +00:00
Howard Chu
8b27523e4c
Add config keyword for DN cache size (aka EntryInfoSize)
...
default is 2x entry cache size
2007-08-11 19:29:14 +00:00
Howard Chu
a87b4592a4
Remove tool_id2entry_get
2007-08-11 04:19:53 +00:00
Howard Chu
ed4b5d1bd7
ITS#5087 fix tool_id2entry_get for hdb
...
TODO: rip this all out and just use tool_entry_get
2007-08-11 02:11:27 +00:00
Pierangelo Masarati
97d2c51980
improve previous commit: now each missing index has a specific counter
2007-08-08 18:22:19 +00:00
Pierangelo Masarati
b713eb5102
add monitor support for unindexed attributes (need to manually #define BDB_MONITOR_IDX)
2007-08-07 22:36:04 +00:00
Pierangelo Masarati
dbad13ead2
workaround open() being a macro in glibc 2.6 (ITS#5075)
2007-08-06 12:57:24 +00:00
Ralf Haferkamp
3a9310431e
Reworked recent backend API changes, now using a separate struct,
...
(ConfigReply) for the error messages.
2007-08-03 12:02:07 +00:00
Ralf Haferkamp
5ae46c195e
Added a new parameter (ConfigArgs*) to the _db_init, _db_open, _db_close and
...
_db_destroy functions.
2007-07-25 17:21:05 +00:00
Howard Chu
b514b25795
Quick and dirty BDB 4.6.18 support. Expect this to change again soon.
2007-07-24 14:02:37 +00:00
Howard Chu
1e8350ad3f
Silence warnings in prev commit
2007-07-23 00:02:31 +00:00
Howard Chu
e0cb8bcf98
Delete extraneous test in prev commit
2007-07-22 17:19:21 +00:00
Howard Chu
4b3bf1a61a
Set GLUE ocflag on dummy context entry
2007-07-21 00:35:32 +00:00
Howard Chu
a56a8540fd
ITS#4961 read context glue entry if it exists
2007-07-21 00:05:16 +00:00
Howard Chu
fb5568bd45
ITS#5052 fix Quick mode erroneously indexing ID#0
2007-07-20 14:42:31 +00:00
Quanah Gibson-Mount
c3e347c11f
Change db == NULL to rc == LDAP_INAPPROPRIATE_MATCHING
...
as a half-way step for ITS#5037
2007-07-10 00:24:05 +00:00
Quanah Gibson-Mount
88a4ffe5be
ITS#5037
...
Move db == NULL check to correct spot
2007-07-09 21:28:14 +00:00
Hallvard Furuseth
4586ede1ab
ITS#5007: Rename label "leave"; OSF1 pthread.h makes it as an exception keyword
2007-06-09 23:45:23 +00:00
Pierangelo Masarati
133035cdd2
do not try to register custom monitor stuff when subordinate (related to ITS#4965); note: this might not be the best solution, because it does not allow to monitor subordinate databases; however, right now it's necessary, since subodinate databases do not register themselves in back-monitor
2007-06-09 14:14:45 +00:00
Hallvard Furuseth
93fbb87545
Give OperationBuffer normal struct members instead of using
...
LBER_ALIGNED_BUFFER(OPERATION_BUFFER_SIZE), as discussed in ITS#4078.
Add a corresponding SyncOperationBuffer in overlays/syncprov.c.
2007-05-18 23:54:26 +00:00
Hallvard Furuseth
7372fea8b5
printf format paranoia: macros could be changed to contain format chars
2007-05-18 14:48:28 +00:00
Pierangelo Masarati
a01d9f961d
fix no-op crasher (ITS#4925)
2007-04-11 20:31:49 +00:00
Hallvard Furuseth
1c87542ea1
Add missing return from void *bdb_tool_trickle_task()
2007-04-09 22:45:21 +00:00
Howard Chu
87466fc7c8
Add trickle-sync for quick mode
2007-04-07 06:10:01 +00:00
Hallvard Furuseth
8e5beab1e8
printf %p expects void*
2007-04-04 17:49:31 +00:00
Howard Chu
0752716d80
Remove obsolete purge (obsoleted in cache.c rev 1.106)
2007-03-22 07:35:10 +00:00
Pierangelo Masarati
226133ea38
don't add databases twice; but try as hard as possible...
2007-03-21 23:22:49 +00:00
Pierangelo Masarati
d0fe3b0890
allow adding of back-bdb with monitoring on (ITS#4789)
2007-03-21 22:35:37 +00:00
Howard Chu
4ae77ae266
ITS#4851 retry if opening a supposedly clean shared memory env fails
2007-02-24 20:18:56 +00:00
Howard Chu
10a0900e2e
Fix prev commit, cleanup fakeroot entry before freeing
2007-02-09 17:39:49 +00:00
Howard Chu
94e7e3ba57
Fix prev commit, free fakeroot on teardown
2007-02-09 17:30:23 +00:00
Howard Chu
2d3c48ccd5
ITS#4838 fix fake root handling broken by prev commit
2007-02-09 17:23:00 +00:00
Howard Chu
fb583c3071
Revert prev commit
2007-02-08 10:29:40 +00:00
Howard Chu
57c5bbf7e4
Just use a readlock in cache loader
2007-02-08 09:27:35 +00:00
Howard Chu
0c25783cee
use dn2id index for extended filters using entryDN
2007-02-08 06:43:28 +00:00
Howard Chu
df31c884b4
Free main-thread keys in db_close, can't do it later because the env
...
will be gone.
2007-01-25 12:24:52 +00:00
Howard Chu
ea8a2894c4
Free main-thread keys in db_close, can't do it later because the env
...
will be gone.
2007-01-25 12:00:40 +00:00
Howard Chu
183a0f3719
ITS#4810 bi_entry_get_rw() must return the entry regardless of whether
...
it's an alias or referral or not
2007-01-25 04:31:23 +00:00
Howard Chu
9a8b3f711e
Only sort the first time
2007-01-17 10:43:37 +00:00
Howard Chu
5d4c8f86bf
Fix prev commit
2007-01-17 10:02:53 +00:00
Howard Chu
ecb06964c5
Cleanup prev commit
2007-01-17 02:46:41 +00:00
Howard Chu
9898983d58
Minor tweaks, put dup EntryInfo's on free list instead of destroying them
2007-01-17 02:43:05 +00:00
Howard Chu
1f853acfc9
Shortcut when no index info is present
2007-01-15 01:27:02 +00:00
Howard Chu
5d3f3c240d
ITS#4554 slapindex takes a list of attributes to index
2007-01-15 01:14:14 +00:00
Howard Chu
b941856404
Set upper bound on EntryInfos, fixed at 4x Entry cachesize.
...
Probably should be tunable. Probably should add hit/miss counters
to monitor to assist in tuning...
2007-01-12 07:35:34 +00:00
Hallvard Furuseth
d16754c81b
Delete unused variables.
2007-01-11 12:04:22 +00:00
Howard Chu
5bcd9243f2
Don't zero out attr value flags
2007-01-10 20:48:37 +00:00
Howard Chu
a2e299eb22
ITS#4799 remove kerberos / kbind
2007-01-10 00:23:28 +00:00
Howard Chu
813cca89a6
ITS#4797
2007-01-08 19:10:23 +00:00
Howard Chu
2082b1f9f0
Avoid calling purge too often
2007-01-05 06:49:25 +00:00
Howard Chu
001ce8e493
Partially revert prev commit, fix lru_purge loop
2007-01-04 11:01:59 +00:00
Howard Chu
57fa57b1d1
Fix HDB - don't use IDL cache when it's not configured
2007-01-04 10:56:18 +00:00
Howard Chu
e48f72c1b5
Unify use of BDB lockers
2007-01-04 08:36:59 +00:00
Howard Chu
23a2339090
Fix prev commits...
2007-01-04 03:26:54 +00:00
Howard Chu
f2acc11976
Simpler fix
2007-01-04 03:17:59 +00:00
Howard Chu
831d1cccc7
Fix idl_cache teardown again - skip if cache is empty
2007-01-04 03:14:46 +00:00
Howard Chu
e094bef172
Remember our own success code in case an overlay changes it
2007-01-03 20:28:56 +00:00
Howard Chu
5cfd2f6d97
Use Clock algorithm for IDL cache too
2007-01-03 19:00:07 +00:00
Howard Chu
6d1ca0a769
Delete unused idl_cache_entry rwlock field
2007-01-03 05:36:49 +00:00
Kurt Zeilenga
da6d9eb046
happy new year
2007-01-02 20:00:42 +00:00
Howard Chu
822888eafc
Bypass a few redundant locks
2007-01-01 11:44:39 +00:00
Howard Chu
6074f48fa7
Tweak cache_lru_print
2007-01-01 11:17:13 +00:00
Howard Chu
a5546a22a8
Fix prev commit, hdb_cache_find_parent
2007-01-01 07:09:22 +00:00
Howard Chu
cd35516bdc
Fix typo in prev commit
2007-01-01 02:16:25 +00:00
Howard Chu
37dfbd3e8b
Fix prev commit
2007-01-01 01:07:57 +00:00
Howard Chu
d7fa1e764d
partial revert - keep acquiring BDB lock in lru_purge.
2007-01-01 01:00:19 +00:00
Howard Chu
b8309b4cf8
Cleanup db_lock/unlock parameters
2006-12-31 23:37:06 +00:00
Howard Chu
a720011c8a
Ditch LRU cache replacement in favor of 2nd-chance/clock.
...
Much better concurrency.
2006-12-31 16:16:48 +00:00
Howard Chu
e844a6956d
In bdb_cache_add use a readlock outside the txn to protect the entry
...
until send_ldap_result completes.
2006-12-30 12:05:55 +00:00
Howard Chu
3bf226382e
ITS#3707 preserve filter input, allow (and ignore) undefined attributes
2006-12-25 23:30:45 +00:00
Pierangelo Masarati
6193ee4003
don't leak callbacks if stuff cannot be registered; provide a means to dispose of private stuff if required
2006-12-24 15:44:56 +00:00
Kurt Zeilenga
80d74dc2cd
Monitor attributes should have dSAOperation usage,
...
not directoryOperation usage. Update test000 to
request return of only @monitor attributes.
2006-12-08 02:30:11 +00:00
Howard Chu
77ed3423b9
ITS#4767 fix bdb_add / translucent interaction
2006-12-04 22:06:58 +00:00
Howard Chu
eb47d50da7
Tweak bei_state so cache_lru_add doesn't ever try to free just-added
...
entries. This allows us to use the frontend's entry directly instead
of having to entry_dup it before adding to the cache.
2006-12-01 14:48:38 +00:00
Howard Chu
2a9afa55a7
Avoid unnecessary calls to oc_bvfind
2006-11-27 19:59:59 +00:00
Howard Chu
3711183610
Skip checkpoint call if size was not specified - defer time-based
...
checkpoints to the runq job
2006-11-27 19:54:04 +00:00
Howard Chu
ee0026ec1e
Don't bother setting up threads if there are no indexed attrs (unlikely...)
2006-11-15 01:20:34 +00:00
Howard Chu
4b6a3e8b6d
Convert schema parsers to ConfigArgs so they can pass errors back to clients
2006-11-15 01:18:37 +00:00
Howard Chu
bd95f8ab1c
ITS#4738 provisional fix, still needs confirmation
2006-11-13 00:24:59 +00:00
Pierangelo Masarati
fb2d3926ce
only abort update if failed pre/post read control is critical: the only thing RFC 4527 says about failure is that in case of failure of the read, no control is appended to the result message; maybe no failure should ever occur (please review)
2006-10-14 01:08:41 +00:00
Pierangelo Masarati
576646abb1
DB_BUFFER_SMALL is BDB 4.4 only
2006-09-27 12:34:00 +00:00
Ralf Haferkamp
e1f068f712
Check for the correct return code of cursor->c_get() (DB_BUFFER_SMALL)
2006-09-27 10:51:06 +00:00
Pierangelo Masarati
067d6904c2
don't know exactly the reason, but here without this back-hdb suddenly starts crashings all times (since bdb_monitor_* stuff)
2006-09-26 08:43:01 +00:00
Pierangelo Masarati
8f90eb97ec
use right, although empty, function in bdb_db_destroy()
2006-09-25 23:45:29 +00:00
Howard Chu
db082f4b1d
Fix prev commit
2006-09-20 20:22:59 +00:00
Howard Chu
f63f46f0b1
Use a single malloc for entry_decode instead of two - partially decode
...
the entry to get nvals first, so the size can be computed.
2006-09-20 02:43:47 +00:00
Pierangelo Masarati
c0c089f4a4
make sure we don't interfere with frontend's entry when the suffix is empty (test027)
2006-09-17 16:45:24 +00:00
Kurt Zeilenga
2c4b2b5566
return structuralObjectClass errors
...
(likely need to be applied to other backends)
2006-09-16 11:48:52 +00:00
Pierangelo Masarati
c92571680d
also work with pcache
2006-09-15 00:16:55 +00:00
Pierangelo Masarati
b890f60e36
minor cleanup
2006-09-14 01:05:02 +00:00
Howard Chu
5342ce61dd
Add register_at / register_oc helpers.
2006-09-13 12:48:45 +00:00
Howard Chu
2bfe79fe88
Add BackendInfo.bi_extra for backend custom APIs
...
Use bi_extra for back-monitor entry points. Backends should never
directly reference each other's symbols.
2006-09-13 11:38:51 +00:00
Pierangelo Masarati
6300e449d8
leave monitor calls in place, hide contents; in the long run, enable monitor and build as static by default
2006-09-12 07:53:19 +00:00
Howard Chu
7cd64d384b
Use #ifdef SLAPD_MONITOR for monitor APIs
2006-09-12 02:59:28 +00:00
Howard Chu
c6ed29dc3c
Fix uninit'd *cb (Coverity scan)
2006-09-09 22:15:45 +00:00
Pierangelo Masarati
8eab487020
further improve monitoring setup and cleanup
2006-09-09 16:24:35 +00:00
Pierangelo Masarati
4350ce5189
cleanup names
2006-09-08 22:10:49 +00:00
Pierangelo Masarati
b60990780f
custom monitoring can be enabled/disabled via config
2006-09-06 23:08:57 +00:00
Pierangelo Masarati
4d55aeb57c
cleanup subsystems monitoring OID handling
2006-09-06 16:06:49 +00:00
Pierangelo Masarati
103485bf99
fix use with back-hdb
2006-09-06 15:11:54 +00:00
Pierangelo Masarati
1fc5e8e057
cleanup monitoring resources
2006-09-06 12:07:03 +00:00
Pierangelo Masarati
6ce47650c9
- objectClass is now AUXILIARY (modifies existing object...)
...
- moved directory path publication from back-monitor/database.c
- added cleanup handler
- minor cleanup
2006-09-06 09:10:46 +00:00
Howard Chu
9c2c30f541
Return current entry/IDL cache counts
2006-09-06 03:37:13 +00:00
Pierangelo Masarati
c67913ce1c
don't get mad if monitor database is not configured
2006-09-06 02:14:32 +00:00
Pierangelo Masarati
ae1481ba62
minor cleanup; plug couple of one-time leaks
2006-09-06 02:06:45 +00:00
Pierangelo Masarati
55f24ce8f6
- setup framework for monitoring of back-bdb/back-hdb stuff in their
...
database entry in cn=monitor
- improve support for custom attribute/callback registration
in back-monitor
- design API for registered antry/attr/callback removal in back-monitor
HEADS UP: now back-bdb requires back-monitor to be present, either static
or dynamically loaded __before__ back-bdb/back-hdb is initialized.
This works for sure if both back-bdb & back-monitor are static or dynamic
(provided back-monitor.la is loaded before back_bdb.la); it is not clear
what happens if back-bdb is static and back-monitor is dynamic. In case,
either make back-bdb monitoring conditional, or hardwire back-monitor
much like back-config and back-ldif.
2006-09-06 01:54:54 +00:00
Pierangelo Masarati
afdae4272a
don't run useless (and likely to fail) checks, if possible
2006-08-30 21:05:05 +00:00
Howard Chu
78172aa0cf
Entry/Attribute struct caching, to minimize malloc fragmentation
...
Note: this breaks LDAP_COMP_MATCH and SLAP_ZONE_MALLOC. But they
were probably broken already anyway.
2006-08-29 01:43:23 +00:00
Quanah Gibson-Mount
88ce76f24e
fix e_private value, goes along with memory leak fix to accesslog.c
2006-08-26 23:20:00 +00:00
Kurt Zeilenga
d3e288dffe
s/managedit/relax/
...
#unifdef -DSLAP_RELAX
2006-08-22 23:31:46 +00:00
Howard Chu
2a2115d70c
Fix prev commit, update kid counters too
2006-07-19 00:06:57 +00:00
Howard Chu
0340a1f1bf
ITS#4616 fix cache_modrdn bei_state management
2006-07-18 10:22:48 +00:00
Howard Chu
bab03f6d5c
Additional purge changes for rev 1.120, don't keep the current thread
...
busy unnecessarily
2006-07-12 01:55:21 +00:00
Howard Chu
70512edd5a
ITS#4572 don't unlock non-existent locks
2006-06-01 02:03:10 +00:00
Howard Chu
9e50b2d0a1
ITS#4552 just rely on ACLs when adding entries under the suffix.
2006-05-18 01:18:48 +00:00
Pierangelo Masarati
b0c304f759
fix referral rewriting (ITS#4548)
2006-05-16 00:57:46 +00:00
Howard Chu
d921fcb0c9
ITS#4531 temporarily go back to using quick sort instead of radix sort
2006-05-11 20:05:53 +00:00
Kurt Zeilenga
6651d19320
cleanup
2006-05-11 18:55:50 +00:00
Ralf Haferkamp
cf1304147d
Add Pre- and Postread Control to the supported controls (ITS#4538)
2006-05-11 16:45:33 +00:00
Ralf Haferkamp
b8bf18f36b
ITS#4532: check *pre/postread_ctrl before freeing
2006-05-10 09:07:37 +00:00
Howard Chu
2a5ecbccaa
Remove some more yield() calls
2006-05-03 07:41:12 +00:00
Kurt Zeilenga
eb9a3c1876
unifdef -DSLAP_ACL_HONOR_DISCLOSE
...
unifdef -DSLAP_ACL_HONOR_MANAGE
unifdef -DSLAP_OVERLAY_ACCESS
unifdef -DSLAP_ORDERED_PRETTYNORM
unifdef -DSLAP_AUTHZ_SYNTAX
Move LDAP_COLLECTIVE_ATTRIBUTES, LDAP_COMP_MATCH, and LDAP_SYNC_TIMESTAMP
back behind LDAP_DEVEL (as these either too experimental or not yet
implemented).
2006-04-12 05:53:26 +00:00
Kurt Zeilenga
c48338233e
s/LDBM/BDB/
2006-04-08 04:24:12 +00:00