Commit Graph

233 Commits

Author SHA1 Message Date
Jong Hyuk Choi
e36f1398f0 misc cleanup 2003-11-12 00:24:11 +00:00
Jong Hyuk Choi
f3586499d0 update ldapsync/syncrepl code according to the new version of
the protocol (draft-zeilenga-ldup-sync-04)
2003-11-11 20:25:19 +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
Howard Chu
d46195d08d ITS#2805 fix core dump using LDBM 2003-11-03 09:54:28 +00:00
Howard Chu
ccf224a759 ITS#2808 fix UUIDNormalize, use it. 2003-11-03 08:22:13 +00:00
Howard Chu
8acb1a0466 Fix refresh mode rescheduling 2003-11-03 06:57:13 +00:00
Howard Chu
fab84134ba ITS#2806 fix abort 2003-11-01 23:03:44 +00:00
Howard Chu
5ed0318b79 Fix retry on failure 2003-10-25 22:07:31 +00:00
Howard Chu
782d1be0ad Fix prev commit, don't timeout outbound connections 2003-10-25 21:14:07 +00:00
Howard Chu
08676eb49d Add support for outbound connections in main listener.
Restructure syncrepl/persist to use outbound connection manager.
2003-10-24 12:57:24 +00:00
Howard Chu
645c2bcb02 Drop unused arguments from syncrepl_add_glue 2003-10-24 08:10:16 +00:00
Howard Chu
f9a8093c83 Drop SLAPI support 2003-10-24 06:06:55 +00:00
Howard Chu
01f7a7466b SLAPI fix - no-op when slapi_plugins_used == 0 2003-10-24 05:58:42 +00:00
Howard Chu
ac7404eabd Fix error recovery, cleanup session handles. Always reschedule task
at end of do_syncrepl; this fixes the problem of syncrepl never starting
if the master isn't up. Set sync interval to 60 seconds in persist mode;
it will retry connecting to the master when the master isn't up. Fail on
SASL at config time instead of at runtime when SASL is not enabled.
2003-10-24 04:11:28 +00:00
Howard Chu
72ace288e8 Fix prev commit, avoid abort when entry is NULL 2003-10-22 07:57:25 +00:00
Jong Hyuk Choi
11e23f6903 syncrepl_entry() return code fix (returns 1 when e needs to be freed) 2003-10-22 06:28:34 +00:00
Kurt Zeilenga
ce4b199485 Syncrepl code cleanup (namely prefix struct field names) 2003-10-22 05:19:30 +00:00
Jong Hyuk Choi
8b8383a85d fix for changing si->syncCookie to bvarray 2003-10-21 22:02:30 +00:00
Howard Chu
ab2a7195d0 Fix cookie search 2003-10-21 08:26:58 +00:00
Kurt Zeilenga
4821c2c6ed Avoid questionable use of strlen(), strcpy(), and strcat(). 2003-10-20 22:23:11 +00:00
Howard Chu
91ebcd87bd Fix prev commit, syncrepl_add_glue must start from sufix 2003-10-19 08:57:30 +00:00
Howard Chu
b144ca2169 ITS#2684 fix bogus entry_free(), connection problem remains 2003-10-19 04:42:02 +00:00
Howard Chu
f0c8dcc331 ITS#2778 use real malloc for new entry, not sl_malloc 2003-10-19 02:18:38 +00:00
Howard Chu
08407b5b00 More malloc cleanup 2003-10-19 00:30:55 +00:00
Howard Chu
b6835be962 ITS#2747, Reorganize syncrepl, fix some memleaks. More remain. 2003-10-18 14:13:37 +00:00
Jong Hyuk Choi
13f981fdd4 remove #include <db.h> (ITS#2765) 2003-10-14 20:22:09 +00:00
Jong Hyuk Choi
490d9e55d4 fix slap_syncrepl_cn_bv 2003-10-14 16:26:01 +00:00
Kurt Zeilenga
4f003dbdaf mv ldap_int_get_controls to ldap_pvt_get_controls 2003-10-12 08:14:28 +00:00
Jong Hyuk Choi
cdb7417765 misc syncrpel updates 2003-10-08 09:36:06 +00:00
Jong Hyuk Choi
a8574a450f slaptools update : replica promotion / demotion
new slapadd options
-p       : promote : If the ldif file contains syncConsumerSubentries, convert
                     them to a single syncProviderSubentry. Its contextCSN
                     attribute has the largest value of the syncreplCookie
                     attributes of the syncConsumerSubentries.
                     syncProviderSubentry in the ldif file is retained.
-p -w    : promote : Recalculate contextCSN based on entryCSN of each entry.
           create    Existing syncConsumerSubentries and syncProviderSubentry
                     are ignored and not added to the directory.
-r       : demote  : If the ldif file contains syncProviderSubentry, convert it
                     to a syncConsumerSubentry having the default syncrepl id
                     of 0. syncConsumerSubentries in the ldif file are retained.
-r -w    : demote  : Recalculate syncreplCookie based on entryCSN of each entry.
           create    Existing syncConsumerSubentries and syncProviderSubentry
                     are ignored and not added to the directory. The default
                     syncrepl id of 0 will be used for the new
                     syncConsumerSubentry.
-r -w -i %d[,%d]*  : Using the comma separated list followed by the -i option,
                     it is possible to create multiple syncConsumerSubentries
                     having the syncrepl ids specified in the list.
                     syncreplCookie values of these sycnConsumerSubentries
                     will have the same value, either from the maximum
                     entryCSN value or from the contextCSN value of the
                     syncProviderSubentry.
2003-10-07 20:01:37 +00:00
Jong Hyuk Choi
d5823fa912 no caching flag in Operation structure 2003-09-25 07:48:53 +00:00
Jong Hyuk Choi
d2320dbd7a followup of the previous commit 2003-09-25 01:40:33 +00:00
Jong Hyuk Choi
cd108bb682 loose ends fixed 2003-09-25 00:59:27 +00:00
Howard Chu
c58ac9d8f1 Add memctx param to build_new_dn(). cleanup DN leaks. 2003-09-24 04:30:41 +00:00
Jong Hyuk Choi
3e99679ca4 log the cause of the error when ldap_result() returns -1 2003-09-23 23:41:57 +00:00
Jong Hyuk Choi
f6d883d901 error behavior fix and TODO 2003-09-18 06:04:28 +00:00
Jong Hyuk Choi
a0331a0487 missing or empty attrs list in a syncrepl specification
is changed to mean attrs="*"
2003-09-17 23:06:57 +00:00
Jong Hyuk Choi
537ccc3f5f fix for persistent search termination (ITS#2724)
- the consumer slapd did not terminate when the provider is alive
 - use a timeout in ldap_result() of syncrepl.c
2003-09-17 10:34:10 +00:00
Jong Hyuk Choi
3868f3b5a7 LDAP_SASL_INTERACTIVE -> LDAP_SASL_QUIET 2003-09-12 22:49:14 +00:00
Jong Hyuk Choi
c25a892e62 misc cleanup 2003-09-04 19:48:53 +00:00
Jong Hyuk Choi
7f882daf15 Schema checking option for LDAP Sync replication 2003-09-03 21:42:52 +00:00
Jong Hyuk Choi
aa8ff20012 Patch for ITS#2692 2003-09-03 08:21:51 +00:00
Jong Hyuk Choi
853c03e38d more patches for ITS#2692 (Thanks Luke!) 2003-08-29 17:02:53 +00:00
Jong Hyuk Choi
090ac0a772 unifdef LDAP_SYNC and LDAP_SYNCREPL 2003-08-27 22:16:04 +00:00
Jong Hyuk Choi
81a53a9a5c LDAP Sync protocol extension
- do not send updates in state mode when
  syncCookie >= contextCSN (or omitCSN if changelog is used)
2003-08-26 22:49:44 +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
Jong Hyuk Choi
6659cf3ea1 LDAP Sync protocol change : state mode (add+present) and log mode (add+delete) 2003-08-14 16:27:36 +00:00
Jong Hyuk Choi
b3e62ef604 SyncRepl updates for back-bdb / back-ldbm 2003-07-15 00:33:49 +00:00
Jong Hyuk Choi
2b803b0459 SyncRepl is changed to share the following routnines :
slap_mods_opattrs(), slap_mods_check(), slap_mods2entry()
2003-07-11 01:01:27 +00:00
Jong Hyuk Choi
b231c33efa export glueing code 2003-07-08 20:07:07 +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
9df9b1377a reinitialize presentlist & nonpresentlist 2003-06-25 23:21:18 +00:00
Jong Hyuk Choi
9faeffe8c6 fix the glueing code 2003-06-25 22:28:50 +00:00
Jong Hyuk Choi
90364acc0b - syncrepl uses per-thread memory allocator
- slimit, tlimit fix (ITS# 2592)
2003-06-23 14:13:38 +00:00
Jong Hyuk Choi
92988db5d3 cleanup 2003-06-12 15:11:08 +00:00
Jong Hyuk Choi
f07179ca61 syncrepl changes
- can handle multiple syncinfo
- ldap_sync_search() added
2003-06-11 17:03:57 +00:00
Kurt Zeilenga
fefb7a97e4 Misc cleanup (needs better error handling and general code cleanup) 2003-05-31 05:48:00 +00:00
Kurt Zeilenga
11f990a641 Fix intermediate responses 2003-05-31 05:32:57 +00:00
Kurt Zeilenga
12304f64e5 Merge partial and intermediate responses 2003-05-31 05:01:49 +00:00
Jong Hyuk Choi
771df8f75b remove DB_NOTFOUND in rc checking 2003-05-30 21:45:07 +00:00
Howard Chu
5d0ba372e5 Fix LBER_OPT_MEMCTX behavior 2003-05-28 22:17:08 +00:00
Jong Hyuk Choi
2e5fb908d1 - glue entry management change
- op->o_tmpmfunc setup
2003-05-23 13:32:13 +00:00
Jong Hyuk Choi
7e7429267e persistent search updates with recent changes 2003-05-20 20:21:39 +00:00
Hallvard Furuseth
3db60ba479 Fix debug output (print int as %d, not %s). 2003-05-20 18:13:39 +00:00
Jong Hyuk Choi
4f58efc4d1 - change in message to modlist conversion 2003-05-20 01:45:12 +00:00
Jong Hyuk Choi
986bcd52a9 -syncUUID search in syncrepl
-test017-syncreplication
2003-05-09 06:50:44 +00:00
Jong Hyuk Choi
35d1bd68b9 runqueue restructuring 2003-05-07 23:52:08 +00:00
Jong Hyuk Choi
580ae073e1 runqueue update 2003-05-07 22:29:26 +00:00
Jong Hyuk Choi
45776bff04 a runqueue for periodic thread execution (for syncrepl) 2003-05-07 02:06:01 +00:00
Jong Hyuk Choi
9543844d39 strdup cleanup 2003-05-02 18:00:33 +00:00
Hallvard Furuseth
c46cd36088 Insert missing %s in printf format to print ldap_err2string(). 2003-05-02 13:13:30 +00:00
Jong Hyuk Choi
e8cd5c2386 - LDAP_SYNCREPL defined in include/ldap.h
- add "updatedn" to the replication specification
- return referral to update to the slave server
2003-05-01 23:39:29 +00:00
Jong Hyuk Choi
0cafb28e31 syncrepl REFRESH : a master entry modify case fix 2003-05-01 02:14:47 +00:00
Jong Hyuk Choi
e08ba25101 syncrepl refresh mode : both scope-in & scope-out working fine 2003-04-30 16:35:23 +00:00
Jong Hyuk Choi
030d5a614d - mods memory allocation fix
- persistent syncreplCookie (in syncConsumerSubentry) access becomes reliable
2003-04-30 04:01:25 +00:00
Jong Hyuk Choi
e9bd75ae9b ber, bv memory cleanup 2003-04-23 16:29:31 +00:00
Jong Hyuk Choi
fd3cf2b5ed get_ldapmsg_ber() -> ldap_get_message_ber() 2003-04-22 22:09:25 +00:00
Jong Hyuk Choi
b67a3b9840 Misc cleanup - more to come. 2003-04-22 21:42:14 +00:00
Jong Hyuk Choi
f97a85db83 more cleanup for the backend API change 2003-04-22 17:59:54 +00:00
Jong Hyuk Choi
3efe7398c9 memory API change 2003-04-21 14:01:39 +00:00
Jong Hyuk Choi
437d2ce5a9 backend operations and callbacks conforms to the new API. 2003-04-09 16:37:00 +00:00
Kurt Zeilenga
c75be97ae9 #ifdef -DSLAP_NVALUES 2003-04-05 03:35:16 +00:00
Jong Hyuk Choi
86fecca9ec LDAP Content Synchronization based Replication :
This is a preliminary code drop. Patches will follow shortly.
2003-04-01 06:38:39 +00:00