Commit graph

201 commits

Author SHA1 Message Date
Howard Chu
fe3b6d0071 ITS#4384 rework entryCSN handling, retrieve from incoming request
if it was provided. Always check and graduate, regardless of shadow status.
2006-02-05 01:09:48 +00:00
Howard Chu
a4a85e03c1 ITS#3950 delete gratuitous yield()s 2006-01-15 13:33:29 +00:00
Kurt Zeilenga
acbb5cf689 Happy new year! 2006-01-03 23:11:52 +00:00
Pierangelo Masarati
93e8395e30 log what is being modified 2005-12-15 17:45:31 +00:00
Pierangelo Masarati
55c52c5c72 better fix to ITS#4183 (the prototype in proto-slap.h was erroneously committed earlier) 2005-11-18 00:00:39 +00:00
Pierangelo Masarati
e88c4b48e3 don't leak fakeroot save_attrs 2005-11-14 19:16:00 +00:00
Pierangelo Masarati
fe59b0be6e reset freed resources 2005-11-14 18:38:58 +00:00
Pierangelo Masarati
144ad3657e handle empty parent (related to ITS#4171) 2005-11-14 18:21:55 +00:00
Kurt Zeilenga
ecd86725f2 Update result code to IANA-assigned values
Provide some backwards compatibility.
Misc cleanup
2005-11-03 01:27:07 +00:00
Howard Chu
6e2c36b03d Fix noop behavior, don't same TXN twice. Use consistent return code. 2005-10-17 08:09:28 +00:00
Howard Chu
7dcb68f6fa Move CSN invocations to backends 2005-10-13 11:58:44 +00:00
Howard Chu
a59c109109 Check errcode from dn2entry before using ei 2005-09-08 11:14:12 +00:00
Luke Howard
12d006d17d Add o_no_schema_check to operation structure
entry_schema_check() nows takes Operation instead of Backend as first
argument, allows it to check o_no_schema_check
2005-08-01 15:26:13 +00:00
Kurt Zeilenga
31727f0f4d Additional manageDIT changes.
Now require be_isroot() instead of "manage".
2005-05-13 21:09:26 +00:00
Kurt Zeilenga
feeeabcd68 manageDIT framework and obsolete objectclasses/DIT-content-rule override 2005-05-13 19:07:31 +00:00
Howard Chu
e3703bfaab Propagate Abandon to allow cleanup callbacks to run 2005-04-28 18:50:24 +00:00
Howard Chu
b45a912070 Check for abandon during transaction retry 2005-04-28 18:45:31 +00:00
Howard Chu
6399387580 ITS#3616 store contextCSN in glue entry if database suffix is empty 2005-04-15 06:58:03 +00:00
Howard Chu
20eaae2c7c Silence warnings in prev commit 2005-04-09 11:21:08 +00:00
Howard Chu
f43086d1c1 ITS#3616 fixes for zero-length DN entry. generate context entry on the
fly if a modify is attempted and it does not exist.
2005-04-09 11:15:05 +00:00
Kurt Zeilenga
9507a11573 cleanup 2005-03-20 01:58:38 +00:00
Howard Chu
df3d8f3e30 Cleanup unused variables 2005-02-20 04:59:29 +00:00
Howard Chu
1dbe92c27b Delete dubious use of be_syncinfo - only the consumer can write the
database, and it will only perform writes it received from the provider,
so referring back to the provider is pointless. (And of course, the
consumer never chases referrals.)
2005-01-15 10:39:23 +00:00
Howard Chu
aa27cb2262 Delete obsolete syncprovider stuff 2005-01-14 05:49:45 +00:00
Howard Chu
f845c573b0 Single consumer context per database 2005-01-13 21:15:50 +00:00
Pierangelo Masarati
4b4bdc6bf6 ...but rather here: GLUE entries would remain such until the server was restarted 2005-01-08 09:13:16 +00:00
Kurt Zeilenga
dc0eacd40b Happy New Year! 2005-01-01 20:49:32 +00:00
Howard Chu
30a6f4d24d Better fix for ITS#3365, manage back-bdb's read locks so frontend/etc.
don't need to worry about them.
2004-12-05 02:00:19 +00:00
Howard Chu
3426a11983 More BDB_PSEARCH cleanup 2004-11-26 09:39:33 +00:00
Howard Chu
3a5bde98ba Disable back-bdb native syncrepl support, enable syncprov overlay,
remove syncrepl stuff from Operation struct
2004-11-25 21:16:54 +00:00
Pierangelo Masarati
bc478dee46 log the right function names 2004-11-17 14:53:03 +00:00
Pierangelo Masarati
be32dce97f rework static backend initialization 2004-11-11 00:38:11 +00:00
Jong Hyuk Choi
62febe5dff fix slap_sl_free() calls in pre / post read controls 2004-11-10 21:38:41 +00:00
Howard Chu
501f749c05 Don't access entry after commit; it may be gone if the cache is full 2004-10-30 23:48:26 +00:00
Jong Hyuk Choi
0af878ac3f syncrepl consistency patch: utilize BDB txn rollback 2004-10-12 17:53:50 +00:00
Howard Chu
7e87f54716 Revert ITS#3353 patch, it needs to be reworked. 2004-10-06 05:51:38 +00:00
Howard Chu
fda3d6260e ITS#3353 consolidate slapd globals into a single struct 2004-10-01 07:33:16 +00:00
Jong Hyuk Choi
86aa3728b9 referral mem leak fix 2004-09-14 01:03:08 +00:00
Kurt Zeilenga
d611a4b49a unifdef -UNEW_LOGGING 2004-09-04 04:54:28 +00:00
Ralf Haferkamp
b8113c5df9 ITS#3226: Clear attribute flags after schema_check failed 2004-07-09 11:18:42 +00:00
Howard Chu
5ab38cfa5f Better fix for ITS#3213, plug mem leaks. Also fix postread response. 2004-07-05 20:08:20 +00:00
Pierangelo Masarati
e052d7297d `err' might be used uninitialized 2004-06-29 17:32:43 +00:00
Ralf Haferkamp
498530fc4c TS#3213: free copy of e_attrs before retrying the transaction in bdb_modify() 2004-06-29 14:52:03 +00:00
Jong Hyuk Choi
2adcccb27d logging psearch return code 2004-06-28 23:51:17 +00:00
Kurt Zeilenga
8bca3b42f9 Rework pre/post read controls to handle retry conditions...
(and plug leaks)
2004-06-23 06:56:23 +00:00
Kurt Zeilenga
e23b0f677f Move pre/post read calls into outer transaction.
Need to fix retry handling.
2004-06-23 06:02:49 +00:00
Jong Hyuk Choi
bc6b28a650 using write lock in accessing pslist 2004-06-23 02:07:12 +00:00
Kurt Zeilenga
83476f2d98 Add pre-read FIXME comment 2004-06-22 23:44:35 +00:00
Kurt Zeilenga
7537d3d843 Partial fix for ITS#3188.
As Howard noted, additional fixes may be needed in other update routines.
2004-06-15 21:13:40 +00:00
Jong Hyuk Choi
4e3c30bbf0 misc addition to the previous glueing commit 2004-02-24 01:55:59 +00:00
Jong Hyuk Choi
53d191e14d syncrepl update: 1) improve error handling 2) glueing support for non-leaf deletion (TODO : deletion of leaf glue entries in the delete / modrdn code) 2004-02-22 20:44:44 +00:00
Kurt Zeilenga
3c598e89fb Happy new year 2004-01-01 19:15:16 +00:00
Kurt Zeilenga
2775c8d4a8 Update no-op control to return LDAP_NO_OPERATION instead of LDAP_SUCCESS.
(back-sql needs to be updated)
2003-12-29 23:31:39 +00:00
Howard Chu
e6f34fddcd ITS#2895 TXN_PREPARE is not needed since we use nested transactions. It
also has a side-effect of releasing all the transaction's existing locks.
2003-12-24 13:27:03 +00:00
Jong Hyuk Choi
fa2aa5bb25 fix for concurrent persistent searches 2003-12-11 00:04:52 +00:00
Kurt Zeilenga
9d811eb1fa Notices 2003-11-28 21:08:20 +00:00
Jong Hyuk Choi
1fdda703e6 Support multiple sync replication at the consumer :
1) simultaneous operation of multiple active sync replication threads
2) cookie management for individual sync replication thread
   (include rid=%3d to the slapd cookie command line option (-c))
2003-11-26 19:49:47 +00:00
Jong Hyuk Choi
279760a467 1. Session history support
- memory based session history to minimize sync traffic
	- when client is covered by a session history, then
      [add+delete] mode is used
	- when client cookie is not covered by the history because
      the cookie is too outdated and/or the history is truncated,
	  [add+present] mode is used
2. Sync cookie syntax : comma separated name=value pairs
	- csn=yyyymmddhh:mm:ssZ#0xSSSS#r#ssssr,sid=nnn
2003-11-10 02:44:25 +00:00
Kurt Zeilenga
ce4b199485 Syncrepl code cleanup (namely prefix struct field names) 2003-10-22 05:19:30 +00:00
Howard Chu
5c711a3b46 ITS#2741 yield before backing off 2003-09-27 03:16:38 +00:00
Howard Chu
fddbe13c6e Revert broken index optimizations 2003-09-21 10:11:46 +00:00
Howard Chu
f2c3ba16d6 cn=ldapsync berval cleanup 2003-09-20 03:26:40 +00:00
Kurt Zeilenga
99f968b597 Initial support for pre/post read controls.
TODO:
	Fix transactional consistency
	Add client response control handling
2003-09-16 18:56:04 +00:00
Jong Hyuk Choi
090ac0a772 unifdef LDAP_SYNC and LDAP_SYNCREPL 2003-08-27 22:16:04 +00:00
Jong Hyuk Choi
79b04b12a2 Context CSN Patch (5)
- persistent search patch
- cascading search patch
2003-08-26 00:35:27 +00:00
Jong Hyuk Choi
3be0b77c88 Context CSN Patch (2)
- BDB context csn codes moved to a separate function in back-bdb/ctxcsn.c
2003-08-25 19:15:04 +00:00
Jong Hyuk Choi
660617ae66 Context CSN patch (1)
- currenty works for refreshOnly mode of LDAP Sync
- Context CSN for add / modify is implemented
- code for delete / modrdn / refreshAndPersist will be soon committed
2003-08-23 02:51:33 +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
aaa66d254e Various udpates for SyncRepl 2003-07-15 00:43:39 +00:00
Jong Hyuk Choi
cc6f31782d - partial attribute replication tested ok
- conf file processing udpate
- misc updates
2003-07-02 14:51:23 +00:00
Jong Hyuk Choi
5bc1e1a3c9 Berkeley DB congestion avoidance 2003-07-01 11:55:18 +00:00
Jong Hyuk Choi
ea57395f82 Glueing code changes for replica promotion scenario 2003-06-28 00:52:40 +00:00
Jong Hyuk Choi
262f8bf11f LCUP primitive routines removed 2003-06-27 17:39:48 +00:00
Howard Chu
0c8a4b1756 More fixes for modify - don't delete index keys that are still being used
by other values of the attribute.

Also, filter out duplicate keys to avoid redundant DB operations.

Key collisions due to separate attributes indexed by supertype are still
not safe. Yuck.
2003-06-13 06:09:45 +00:00
Kurt Zeilenga
a8e859a401 Add server side assert control support. 2003-06-10 04:44:41 +00:00
Howard Chu
4a3748b6cf Restructured to avoid direct use of sl_malloc functions. Minimizes impact
of #ifdef USE_SL_MALLOC...
2003-05-25 00:53:08 +00:00
Luke Howard
ac7ac5acef Don't crash if attr_find() fails (Howard, you might like to review this) 2003-05-14 07:25:00 +00:00
Howard Chu
190f161d74 Optimize modify_internal, only reindex the actual modified values, not
the entire attribute.
2003-05-13 03:09:48 +00:00
Howard Chu
377bccbc6c Hierarchical cache management. 2003-04-16 16:23:36 +00:00
Howard Chu
d28bdf9cc2 Fix for modrdn retries 2003-04-15 01:13:28 +00:00
Howard Chu
ece7452b05 More memory context tweaks 2003-04-11 01:29:28 +00:00
Kurt Zeilenga
c75be97ae9 #ifdef -DSLAP_NVALUES 2003-04-05 03:35:16 +00:00
Howard Chu
adefd27c44 Fix return of DB error code to LDAP client 2003-04-03 01:59:08 +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
5ad51b6150 SLAP_NVALUES tweaks - after input, a_nvals is always populated. If there is
no normalizer, a_nvals = a_vals.
2003-03-24 01:56:56 +00:00
Howard Chu
1e5de87e10 Plug memory leaks:
retrying a modrdn leaked DNs, rdns, etc.
	modifying a cached entry leaked attrs
2003-03-12 13:04:23 +00:00
Kurt Zeilenga
47b18c9a51 SLAP_NVALUES: index normalized values 2003-03-01 05:17:44 +00:00
Howard Chu
d7aac0a9d5 Only check opinfo.boi_err when ACL check failed. 2003-02-26 12:49:21 +00:00
Howard Chu
18554e7511 Fix attribute/group to allow TXN to abort on lock failure. Save and
restore op->o_do_not_cache on TXN retry, bdb_group will set it if it
fails to get a lock.
2003-02-26 12:09:10 +00:00
Kurt Zeilenga
dd66e6e929 SLAP_NVALUES, round 3 2003-02-26 07:39:30 +00:00
Kurt Zeilenga
c04e9ac993 rename "permit modify" control to "permissive modify"
rename "no referrals" controls to "domain scope"
misc cleanup
2003-02-09 05:39:21 +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
55cf8bbd88 use of pre-assigned locker in bdb_group() / bdb_attribute() 2003-02-07 15:47:32 +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
Luke Howard
819d4093ae Honour PermitModify control when adding or deleting values. This code needs
review although, with the control disabled, it should not affect existing
code paths.
2003-01-24 01:43:09 +00:00
Kurt Zeilenga
6939c53170 Happy new year 2003-01-03 20:20:47 +00:00
Jong Hyuk Choi
8074294f1d LCUP persistent search code drop 2002-10-25 17:51:30 +00:00
Pierangelo Masarati
966dd1bdca definitely fix NOOP in back-bdb 2002-08-31 17:03:42 +00:00
Pierangelo Masarati
0d5fe062e2 improved support for NOOP; add is fine, the other write funcs still need work 2002-08-31 12:00:39 +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