Commit Graph

344 Commits

Author SHA1 Message Date
Rein Tollevik
99d004189a ITS#5596 contextCSN updates are internal operations. 2008-07-04 23:44:39 +00:00
Pierangelo Masarati
103c7b48e2 allow olcSpReloadHint in olcSyncProvConfig (ITS#5591) 2008-07-02 22:37:34 +00:00
Howard Chu
731aad4c4d ITS#5589 delcsn / NULL cookie 2008-07-02 16:27:17 +00:00
Rein Tollevik
e5dfb18abc ITS#5564 ignore clients contextCSN when doing full reload. 2008-06-18 19:38:39 +00:00
Rein Tollevik
06379f9cf9 ITS#5548 use syncrepl Connection when evaluating filter and acl. 2008-06-13 15:55:01 +00:00
Howard Chu
83c16b8fc7 ITS#5337 fix maxcsn search at startup 2008-05-29 23:48:35 +00:00
Howard Chu
a709d8b69a Fix rev 1.220 - remove extra free_syncop() 2008-05-29 16:58:32 +00:00
Howard Chu
684a213f0b ITS#5488 from Rein Tollevik: propagate syncrepl contextCSN to providers 2008-05-28 02:46:35 +00:00
Howard Chu
b92472c3e4 ITS#5487 from Rein Tollevik: syncprov_findbase searched wrong backend 2008-05-28 02:45:18 +00:00
Howard Chu
96d5ed5bc5 ITS#5465 ignore ops without queued CSNs 2008-05-13 21:57:19 +00:00
Howard Chu
c7a49fcfc5 ITS#5506 reset op2.o_extra 2008-05-12 18:33:05 +00:00
Howard Chu
9ce205818e ITS#5493 always send cookie with delta-sync entries 2008-05-09 01:51:26 +00:00
Howard Chu
198b14be90 ITS#5486, fix rev 1.219. Must never use s_op directly, must always use
a copy.
2008-05-06 03:03:47 +00:00
Howard Chu
b16478a5ca Avoid queueing response on abandoned psearches 2008-04-29 22:09:12 +00:00
Howard Chu
64315e3087 ITS#5451 glue deadlock fix 2008-04-28 12:53:04 +00:00
Howard Chu
90a45655c2 ITS#5484 remove syncop from runq before freeing it 2008-04-24 18:35:35 +00:00
Howard Chu
f8a012cc83 Revert prev commit 2008-04-17 00:03:06 +00:00
Howard Chu
2abce97228 ITS#5470 don't return any data at all until we have a ctxcsn 2008-04-16 10:37:44 +00:00
Howard Chu
626608f5f2 ITS#5437, #5444 if numcsns don't match, set changed flag 2008-04-03 08:43:48 +00:00
Pierangelo Masarati
8cb162ef44 fix bitwise test (ITS#5445) 2008-03-31 16:58:03 +00:00
Howard Chu
50a26bec0a ITS#5434 again 2008-03-25 05:08:21 +00:00
Howard Chu
fc69e61be6 ITS#5432 don't send cookie with delete set if there's no true delete CSN 2008-03-21 00:09:24 +00:00
Howard Chu
261d2420f4 ITS#5434 search thru other overlays when present 2008-03-20 00:31:42 +00:00
Howard Chu
0abf40063f ITS#5433 checkpoint must write to master DB 2008-03-20 00:26:14 +00:00
Howard Chu
4097d261bb Use <ldap_queue.h> macros for prev commit 2008-03-14 16:49:53 +00:00
Howard Chu
0cb9cb04ea ITS#5401 make sure connection is still alive before detaching op 2008-03-13 10:49:32 +00:00
Pierangelo Masarati
5417aa895a use the replication persistent search identity to check whether a modification must be replicated (ITS#5418) 2008-03-12 22:31:28 +00:00
Howard Chu
a287573d2d ITS#5407 more checks for pool pausing 2008-03-08 23:51:07 +00:00
Howard Chu
26c08cb64a Fix prev commit (thanks Ando) 2008-03-08 22:12:57 +00:00
Howard Chu
44b1af6e65 ITS#5405 fix race condition 2008-03-08 02:00:36 +00:00
Howard Chu
525f266d10 ITS#5367 revert prev commit 2008-02-11 00:19:43 +00:00
Howard Chu
32a082c24b Cleanup 2008-02-10 02:10:28 +00:00
Kurt Zeilenga
c890c96d13 Happy New Year (belated) 2008-01-08 00:19:56 +00:00
Howard Chu
d38ff5403f ITS#5261 quick fix, don't checkpoint on first write to DB 2007-12-22 05:00:38 +00:00
Howard Chu
6c0b815b6f ITS#5268 omit contextCSN when replicating 2007-12-08 17:45:10 +00:00
Howard Chu
005209bfe1 ITS#5211 spec says we must ignore invalid cookies 2007-11-04 12:34:41 +00:00
Howard Chu
528a30fe87 More for prev commit, ITS#5120. 2007-11-02 16:40:42 +00:00
Howard Chu
b6570cf867 Don't send cookie at end of refresh if nothing changed in refreshAndPersist 2007-11-02 00:25:11 +00:00
Howard Chu
a79bc9195d ITS#5177 pass new entries in search_response for Persist mode 2007-10-08 18:13:29 +00:00
Howard Chu
8bb39495c7 Fix unprotected checks for psearches 2007-10-08 13:59:33 +00:00
Howard Chu
d2f75ebaa5 Plug leak 2007-10-08 13:28:25 +00:00
Howard Chu
9dc35b8997 Don't queue zero-length CSNs 2007-10-02 23:51:40 +00:00
Pierangelo Masarati
14bcd332ce log cookie (until we find what's going on...) 2007-10-02 18:09:15 +00:00
Pierangelo Masarati
2de9d97ad2 first round of s/sprintf/snprintf/; the rationale is: truncate error messages rather than buffer overflow; otherwise, assert that no buffer overflow occurred. In some cases, error handling could be added. Please note: no real error in the code was found so far, apart from that in syncprov.c and from some config-time error logging; however, errors could slip thru again if things don't change consistently 2007-09-29 17:55:33 +00:00
Howard Chu
d2179d885f Use attr_valfind instead of value_find_ex to optimize lookups 2007-09-24 05:02:31 +00:00
Howard Chu
e8c2414831 Preliminary sorted value support 2007-09-24 01:31:23 +00:00
Howard Chu
a3547e2758 More for a_numvals 2007-09-23 04:40:16 +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
7ceaad7eb2 plug yet another leak 2007-08-29 00:27:47 +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
b7d38c15ff ITS#5048 fully initialize fc_limits 2007-07-20 15:16:36 +00:00
Hallvard Furuseth
9bd4a298ef ITS#5049: Initialize conn in syncprov_db_close() before connection_fake_init(). 2007-07-18 21:02:14 +00:00
Howard Chu
9227293e8d ITS#4977 check for cookie parse failure 2007-06-08 09:05:35 +00:00
Pierangelo Masarati
74ca4680db more ITS#4973 initialization 2007-05-19 14:12:24 +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
Howard Chu
093f52e44d ITS#4961 disable schema checking on contextCSN update 2007-05-14 21:25:48 +00:00
Kurt Zeilenga
f810e6ed41 Distinguish absent control value from empty control value. 2007-04-20 22:32:58 +00:00
Pierangelo Masarati
639d678592 cleanup struct declarations 2007-03-20 01:07:10 +00:00
Howard Chu
06212e9de9 Plug leaks 2007-02-16 02:22:24 +00:00
Howard Chu
e28627f1e2 Added "slapd" rewrite map handler, connection_fake_init2 to use existing
tmpmemctx without reinitializing
2007-02-14 08:51:47 +00:00
Howard Chu
f649d8a29c Cleanup si_ctxcsn and si_sids in db_destroy 2007-02-13 13:40:56 +00:00
Howard Chu
3eb81978f3 Coverity leak 2007-02-13 11:10:36 +00:00
Pierangelo Masarati
a904cc015c fix crash related to ITS#4839; other issues seem to presist 2007-02-10 10:55:05 +00:00
Howard Chu
9d86bf253f Improve prev commit 2007-02-07 02:49:40 +00:00
Howard Chu
3fbcfa797e Re-fix ITS#4720, use rwlock 2007-02-07 01:08:54 +00:00
Howard Chu
3f20aa245f Partially revert prev commit, delete unused parameter, fix psearch response 2007-02-06 05:58:01 +00:00
Howard Chu
9467269cef ITS#4623, entry_get has to pass thru glue layer too 2007-02-06 04:19:56 +00:00
Howard Chu
448f584fe5 Fix typo 2007-02-06 01:18:17 +00:00
Howard Chu
21e4eb3dcc Fix prev commit - cannot shortcut initial sync 2007-02-05 23:54:07 +00:00
Howard Chu
250cbd286a Optimization: send sid in cookie to avoid getting our changes sent
back to us.
2007-02-05 23:10:22 +00:00
Howard Chu
55b29bedf8 Fix prev commit, don't generate a new ctxcsn if we're a consumer with
an empty DB
2007-02-05 09:19:46 +00:00
Howard Chu
fffaea79eb Preliminary multi-context support for syncrepl. Passes all single-master
tests, needs multi-master testing.
2007-02-05 04:50:07 +00:00
Howard Chu
8d03970944 Fix debug args 2007-01-25 11:56:49 +00:00
Howard Chu
35e0956c26 Log the error code too 2007-01-25 04:10:57 +00:00
Howard Chu
7eeeaaf06d ITS#4810 log a message if be_entry_get doesn't return the entry we want 2007-01-25 04:10:18 +00:00
Howard Chu
1ce42136fb ITS#4813 don't limit the presence list to the current snapshot. add
some debug msgs for the sessionlog list.
2007-01-25 02:06:33 +00:00
Howard Chu
67b08ebe77 Don't use ldap_pvt_thread_pool_context_reset(), it interferes with
dynamic adds.
2007-01-21 13:02:05 +00:00
Kurt Zeilenga
da6d9eb046 happy new year 2007-01-02 20:00:42 +00:00
Pierangelo Masarati
19dabd2fa8 complain if instantiated outside of a database definition 2006-12-02 10:42:42 +00:00
Howard Chu
48fce3d119 ITS#4742 cleanup config error reporting 2006-11-12 02:15:49 +00:00
Howard Chu
b009b1820e ITS#4720 release csn mutex before checkpointing. 2006-10-26 15:34:40 +00:00
Howard Chu
393e6e5ec0 Tweak prev commit, avoid referencing syncop when resetting qtask 2006-09-21 10:12:42 +00:00
Howard Chu
c1fad2d603 ITS#4658 propagate errors from syncprov_sendresp; drop qtask on errors.
Note: need a way to close the connection too.
2006-09-21 09:42:40 +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
Howard Chu
ccd1273cfe TS#4622 deletes in psearch didn't always propagate 2006-08-15 21:41:14 +00:00
Howard Chu
44d3972dd7 ITS#4622 if any present list was sent, must send refreshPresent 2006-08-15 12:37:59 +00:00
Howard Chu
55aa8af4be ITS#4622 make sure queued psearch responses get played after refresh
phase completes. Ignore empty sessionlog
2006-08-15 09:28:25 +00:00
Howard Chu
789c76b4ce Delete curcsn arg to slap_get_commit_csn, redundant with op->o_csn 2006-08-15 09:25:42 +00:00
Howard Chu
b915969d29 ITS#4589 slap_get_commit_csn occasionally returns a curcsn that points
to already-freed memory. That bug still needs to be tracked down. This
patch deletes curcsn and just uses op->o_csn, which did not exist when
this code was originally written.
2006-07-28 02:40:38 +00:00
Howard Chu
5757065736 ITS#4622
syncrepl: don't save contextCSN on incoming context entry
  syncprov: delete contextCSN on checkpoint if ctxcsn is empty
2006-07-27 10:44:22 +00:00
Howard Chu
00addd5d68 ITS#4613 - fail to start if lastmod is off 2006-07-24 00:32:27 +00:00
Howard Chu
e3bea86205 ITS#4562 - don't assume syncprov_op_response only runs in overlay context;
under a glue setup it may be get a real DB, don't corrupt the DB struct.
2006-05-26 12:08:15 +00:00
Howard Chu
837e9466b8 ITS#4534 propagate CSN for delete syncID sets 2006-05-11 10:46:44 +00:00
Howard Chu
608c85a9f0 ITS#4423, fix sessionlog lower bound in playlog 2006-05-02 05:08:59 +00:00
Howard Chu
590bc6a7fa More logging for ITS#4423 2006-04-28 03:06:47 +00:00
Hallvard Furuseth
19a0d82937 Init & destroy so.s_mutex around syncprov_findbase() call in syncprov_op_search 2006-04-02 23:49:57 +00:00
Howard Chu
8cbd5ecc13 Cleanup 2006-03-31 10:45:23 +00:00
Howard Chu
7b5528d68b ITS#4417 backglue must pass intermediate responses transparently.
syncprov must prevent send_ldap_result from being called for an
in-progress persistent search.
2006-02-27 09:20:55 +00:00
Howard Chu
fdc89d2604 ITS#4365 reset frs.sr_nentries before searching in syncprov_playlog 2006-01-23 22:23:00 +00:00
Howard Chu
51c5916149 ITS#4364 add filter_dup, don't use str2filter to dup filters. 2006-01-23 20:53:52 +00:00
Pierangelo Masarati
b21c869ac3 silence (harmless) warnings 2006-01-07 11:13:40 +00:00
Howard Chu
7b9fc0e377 wake listener when scheduling qtask so it can run immediately 2006-01-06 20:38:14 +00:00
Pierangelo Masarati
906acc2b30 resource release (more is needed: a report is coming...) 2006-01-06 16:34:20 +00:00
Kurt Zeilenga
acbb5cf689 Happy new year! 2006-01-03 23:11:52 +00:00
Pierangelo Masarati
aecf0f4164 typos in comments (very pedantic...) 2005-12-26 17:00:12 +00:00
Howard Chu
8a9761bc3f ITS#4238 don't hide syncrepl control from rootDSE 2005-12-15 23:05:12 +00:00
Pierangelo Masarati
62d4ae9058 a back-ldap consumer segfaults when accessing members of conn... 2005-12-15 11:55:46 +00:00
Howard Chu
51f9ef7ab9 Improve previous commit 2005-12-07 12:09:00 +00:00
Pierangelo Masarati
447b065abd rework previous commit? 2005-12-07 09:51:12 +00:00
Pierangelo Masarati
24887642dc don't search max CSN if don't have a value; try the operational_attrs if entryCSN is not in attrs 2005-12-07 01:30:28 +00:00
Pierangelo Masarati
ed0bed72b9 plug leaks 2005-12-06 23:10:14 +00:00
Kurt Zeilenga
48cb85865d Remove some unnecessary #ifdefs 2005-11-26 07:38:18 +00:00
Pierangelo Masarati
98936ee3c4 streamline overlay configuration 2005-11-25 12:43:43 +00:00
Pierangelo Masarati
d34fffcaf9 use lutil_ato*() whenever appropriate 2005-11-24 01:10:05 +00:00
Howard Chu
12d2901162 More for ITS#3939 2005-11-20 22:14:57 +00:00
Howard Chu
3167b29812 Fix back-bdb inequality_candidates to use unchecked limit.
Fix syncprov_findcsn to set unchecked limit. (ITS#3939)
2005-11-20 10:39:05 +00:00
Pierangelo Masarati
86fc534c8f improve fix to ITS#4173 2005-11-16 15:58:18 +00:00
Pierangelo Masarati
48ecc89890 don't muck with SlapReply during response (ITS#4173) 2005-11-15 18:27:40 +00:00
Pierangelo Masarati
255112e702 gdb is much more clever with enums... 2005-11-08 00:40:20 +00:00
Pierangelo Masarati
1249fa93d5 plug one-time leak 2005-11-03 22:51:27 +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
1bd689d5d0 Use generic filter for findbase 2005-10-15 05:13:05 +00:00
Howard Chu
8c8e6293f9 The rest of the reloadHint support... 2005-10-15 03:27:05 +00:00
Howard Chu
d98dee3e19 Add option to enable using the reloadHint. 2.2 consumers never sent this
hint. The 2.3 consumer needs it for delta-syncrepl.
2005-10-15 00:31:22 +00:00
Howard Chu
7dcb68f6fa Move CSN invocations to backends 2005-10-13 11:58:44 +00:00
Kurt Zeilenga
6db7e605ee Align Operation buffers using LBER_ALIGNED_BUFFER 2005-10-12 23:17:28 +00:00
Howard Chu
851c65ac5b ITS#4068 fix queued UUIDs 2005-10-07 00:31:38 +00:00
Howard Chu
f14f6472e7 Plug memleaks 2005-10-06 18:45:53 +00:00
Howard Chu
0f69daacac Don't flush psearch queue in main search, let the qtask do it. 2005-10-04 02:29:25 +00:00
Howard Chu
59155d9029 Fix abandon checks, syncop use count. 2005-10-03 22:59:25 +00:00
Howard Chu
2233041bd0 Fix prev commit op initialization, runqueue startup latency 2005-10-03 04:49:35 +00:00
Howard Chu
7486ef93df Tweak prev commit, avoid rescheduling running qtask 2005-10-02 12:28:50 +00:00
Howard Chu
190d6e768d Fix runq scheduling 2005-10-02 12:26:02 +00:00
Howard Chu
52e8aaea3c Fix prev commit modrdn 2005-10-02 10:48:28 +00:00
Howard Chu
4d44d54144 Minimize base lookups 2005-10-02 05:01:45 +00:00
Howard Chu
47a055b59b Always queue psearch responses (ITS#3671 revisited) 2005-10-02 03:58:00 +00:00
Howard Chu
285f841bd6 Add a "nopresent" keyword to skip the present phase; for backends that are
only used for logging (c.f. accesslog overlay) the present phase is useless.
2005-09-14 15:25:52 +00:00
Howard Chu
ba39e3fe00 ITS#3989 more fixes 2005-09-09 04:53:56 +00:00
Howard Chu
d567be70eb ITS#3989 fix crash - don't access freed psearch records 2005-09-08 02:19:05 +00:00
Howard Chu
fc8b2dda7c ITS#3989 fix ID used for syncprov_findbase 2005-09-02 10:08:44 +00:00
Hallvard Furuseth
a1a9507295 Remove unused variable 2005-08-26 21:42:48 +00:00
Pierangelo Masarati
afaf426231 need stricter sanity checks... 2005-08-25 08:57:08 +00:00
Howard Chu
1f78e2b831 ITS#3961 better fix - provide a context for the main thread. The context
must be reset by the caller to clear out temp allocations etc.
2005-08-23 04:12:57 +00:00
Howard Chu
468112e2ba ITS#3961 provide ldap_pvt_thread_pool_fake_context_init/destroy, don't
use arbitrary context pointers.
2005-08-23 03:25:21 +00:00
Howard Chu
88dd1c5659 More optimization for CSN filter checks 2005-08-15 07:18:19 +00:00
Howard Chu
8c20a11293 Fix prev commit 2005-08-15 05:36:56 +00:00
Howard Chu
71bc69bfff Optimize FINDCSN case 2005-08-15 00:04:13 +00:00
Howard Chu
f4c1eee382 ITS#3935 tweak sessionlog description 2005-08-14 08:35:31 +00:00