Howard Chu
07e79471f9
ITS#9534,#9324 fix refresh startup
...
Partially revert 5aa7e0f69b
Use an explicit timeout for Refresh response. Need to give time
for the provider to reply.
2021-05-13 18:29:22 +01:00
Howard Chu
2cda679e3b
ITS#9534 fix prev commit
2021-04-24 15:47:03 +01:00
Howard Chu
87099f8e0d
ITS#9534 additional
...
Partially revert 0b20b92ec1
Reuse the client conn for delta-sync startup
2021-04-24 15:45:58 +01:00
Howard Chu
8a72584bd1
ITS#9534 fix delta-sync startup
...
When transitioning from plain refresh to delta mode, don't
wait for a reschedule, go immediately.
Partially reverts f2740c79b3
2021-04-24 15:38:02 +01:00
Ondřej Kuzník
afa19de2cb
ITS#9295 Handle add+delete on a single-value attr
2021-04-12 15:15:02 +00:00
Ondřej Kuzník
e36d1e31c5
ITS#9001 manual changes
2021-03-30 15:46:40 +01:00
Howard Chu
829263c454
ITS#8847 move lutil_sockaddrstr() to ldap_pvt_sockaddrstr()
2021-03-26 13:45:26 +00:00
Howard Chu
f2740c79b3
ITS#8589 syncrepl: defer on REFRESH_REQUIRED
...
Schedule a new retry instead of immediate looping back. This
will also prevent locking up cn=config replication.
2021-03-21 17:41:19 +00:00
Paul B. Henson
dcca73370b
Move slap_sockaddrstr into liblutil
2021-02-24 18:11:09 +00:00
Ondřej Kuzník
ee564399df
ITS#9282 Check all csns
2021-02-18 17:31:32 +00:00
Quanah Gibson-Mount
6c469f0793
ITS#7790 - Rename config.h
...
Rename slapd/config.h to slap-config.h and update accordingly
Rename lloadd/config.h to lload-config.h and update accordingly
2021-02-02 21:26:39 +00:00
Ondřej Kuzník
4da575d451
ITS#7766 Fix previous commit
2021-02-01 16:51:56 +00:00
Ondřej Kuzník
84db7cb21f
ITS#7766 Include all relevant attributes in diff
2021-01-28 20:59:17 +00:00
Quanah Gibson-Mount
efaf9a4a17
Happy New Year!
2021-01-11 19:25:53 +00:00
Howard Chu
56860fc405
ITS#9342 delta-syncL ignore add of already existing entry
...
if the entryCSN is older. Previous patch breaks if writes are
received out of order, e.g. during a refresh.
2020-10-01 14:27:24 +01:00
Ondřej Kuzník
efc23cddc3
ITS#9295 Do not replace 'op'
2020-09-30 18:55:34 +00:00
Ondřej Kuzník
20024d5ba8
ITS#9359 Do not create an empty add
2020-09-30 19:25:56 +01:00
Howard Chu
ed949bf287
ITS#9342 delta-sync: ignore add if entryCSN is too old
...
This check is only needed for ops received without a CSN in their cookie.
This only occurs when the ops completed out of order on the provider.
2020-09-30 15:45:04 +00:00
Ondřej Kuzník
1b8e6b944b
ITS#9355 Propagate errors from overlay_entry_get_ov
2020-09-23 11:10:29 +01:00
Howard Chu
62ecd38bc4
ITS#8102 syncrepl: only use trylock on the cn=config DB
2020-09-22 21:27:15 +01:00
Howard Chu
331e587754
ITS#9352 syncrepl: fix syncrepl_op_modify on entry with no entryCSN
2020-09-17 20:18:20 +01:00
Howard Chu
2b512ea79c
ITS#9339 Fix syncrepl_monitor_init for dynamic monitor backend
...
Calling from backend.c only works if back-monitor is a static backend
2020-09-17 15:22:01 +01:00
Howard Chu
3e181b8453
Silence stupid warnings
2020-09-16 23:27:45 +01:00
Quanah Gibson-Mount
947b8ed9d6
Fix code indentation for recent changes
2020-09-16 21:13:28 +00:00
Howard Chu
d63287e2f4
ITS#9345 fix for cmdline cookie
...
Previous commit could cause cmdline cookie to be ignored
2020-09-15 15:00:57 +00:00
Howard Chu
57643b4347
ITS#9345 syncrepl: call check_syncprov on freshly started consumer
2020-09-12 21:44:31 +01:00
Howard Chu
72bfa9d488
ITS#9339 fix connection address handling
...
valgrind didn't like accesses to si->si_connaddr
Also fix an array bounds check in ITS#9282 merge_state
2020-09-10 17:03:32 +00:00
Howard Chu
490273fb97
ITS#8102, #9330 partially revert
...
Fix a regression in delta-sync, was returning error on old
CSNs instead of ignoring them
2020-09-10 16:17:13 +00:00
Howard Chu
1748ec59a6
ITS#9339 Add syncrepl status to cn=monitor
...
Shows connection address, refresh/persist state, time of last
connect attempt and received data, and last sent and
received cookies per consumer.
2020-09-10 02:29:19 +00:00
Howard Chu
e02b1d94ca
ITS#8102 serialize plain syncrepl
...
Using cs_pmutex. Reverts the addition of cs_modmutex in ITS#9330,
use cs_pmutex for both delta and plain writes.
Note that plain syncrepl already used cs_pmutex when a cookie CSN
was present in the op. Now it is used for all writes, regardless
of presence of cookie.
2020-09-09 15:35:59 +00:00
Howard Chu
8bd2d1fee8
ITS#9342 delta-sync: ignore error if deleting an already deleted entry
2020-09-09 00:19:35 +01:00
Howard Chu
0b20b92ec1
ITS#9338 syncrepl: Don't reuse existing connection on Refresh fallback
2020-09-04 18:22:32 +01:00
Quanah Gibson-Mount
b51faa5cf0
Revert "Tweak prev commit for RE24 style debug"
...
This reverts commit d224e576a9 .
Revert, wrong branch
2020-09-02 19:33:03 +00:00
Quanah Gibson-Mount
d224e576a9
Tweak prev commit for RE24 style debug
2020-09-02 19:31:59 +00:00
Howard Chu
41396248a2
ITS#9282 more for merge_state
...
Don't assume si_cookieState is always newer
2020-08-31 20:09:52 +01:00
Howard Chu
8699e5f32e
ITS#9282 fix crash in nonpresent_callback
...
In a standard Refresh present phase, the provider sends no cookie
since it is only listing the entries that existed as of the time
in the cookie the consumer sent. In this case the consumer only
needs to check entryCSNs against its last sent cookie.
2020-08-31 19:36:10 +01:00
Howard Chu
0ce83b26af
ITS#9330 Fully serialize delta-sync
...
Don't depend on accesslog overlay's serialization
2020-08-29 01:13:04 +00:00
Howard Chu
9900794af1
ITS#9329 Re-fix merge_state
...
A bit uglier but more straightforward.
2020-08-26 21:00:00 +01:00
Howard Chu
9666306d86
ITS#9329 syncrepl: fix regression from ITS#9282
2020-08-25 21:13:22 +00:00
Howard Chu
5aa7e0f69b
ITS#9324 syncrepl: don't wait forever in Refresh mode
...
Just poll for available data, same as Persist mode.
Clarify retry/return states from do_syncrep2
2020-08-24 15:12:24 +00:00
Howard Chu
4cf90e84de
ITS#9295 use replace on single-valued attrs
...
For delta-sync as well as regular sync
2020-07-29 16:15:42 +01:00
Ondřej Kuzník
4b62f3b8d2
ITS#8645 Check for all syncrepl errors
2020-07-22 20:22:50 +00:00
Quanah Gibson-Mount
3716245fec
Issue#8511 - Update documentation and configs to correctly use multiprovider
2020-07-22 19:32:49 +00:00
Ondřej Kuzník
521b8bbe4b
ITS#9282 Check entries are covered by new contextCSN before deletion
2020-07-22 18:24:52 +00:00
Ondřej Kuzník
5bbcf38c78
ITS#9282 Build a complete cookie for the search
2020-07-22 18:24:51 +00:00
Quanah Gibson-Mount
21eef84a49
ITS#9275 -- Update wording to remove slave and master terms, consolidate on provider/consumer
2020-07-18 16:27:04 +00:00
Ondřej Kuzník
182ec30a6b
ITS#8768 Accept delcsn from the server
2020-06-23 16:06:09 +00:00
Ondřej Kuzník
d1e874c605
ITS#8768 Introduce delcsn into our syncrepl cookies
2020-06-23 16:06:09 +00:00
Howard Chu
f5ff1dad7e
ITS#9227 fix attr / opattr detection in prev commit
2020-05-08 18:50:58 +01:00
Howard Chu
5462fc26b5
ITS#9227 syncrepl: don't delete non-replicated attrs
2020-05-08 16:23:44 +01:00