Howard Chu
80a545b5ed
Partially Revert "ITS#8486 use kbtree for sessionlog"
...
This mostly reverts commit 1915cb968a
.
Too many concurrency issues. Retains the improvement to
syncprov_sessionlog_cmp
2020-09-30 15:11:31 +00:00
Howard Chu
1915cb968a
ITS#8486 use kbtree for sessionlog
...
Saves about 20% CPU time and RAM
2020-09-25 00:07:50 +00:00
Ondřej Kuzník
98d5c5c6ce
ITS#8486 Protect tavl_* calls in play_sessionlog
2020-09-25 00:07:50 +00:00
Howard Chu
8f8774c0b1
ITS#8486 Minor play_sessionlog cleanup
...
Fix logmsg uuidstr.
Shortcut finding start of playback.
Allow dup CSNs in log, but with different UUIDs. All
non-present deletes in a refresh use the same CSN.
2020-09-25 00:07:50 +00:00
Ondřej Kuzník
d2036cec90
ITS#8486 Switch sessionlog to use TAVL
2020-09-25 00:07:50 +00:00
Howard Chu
afc970b11d
ITS#9015 syncprov: fix for zero-length suffix
...
If the "" glue entry exists and lacks a contextCSN, must perform
an additional search to be sure the DB is otherwise empty. If so,
skip creating the contextCSN.
2020-09-15 12:08:22 +01:00
Howard Chu
ef2b505b20
ITS#9043 Fix new log msg crashes
...
Solaris stdio hates NULL pointers
2020-09-11 23:36:41 +00:00
Ondřej Kuzník
eb5f138650
ITS#9043 Only print sessionlog entries we think will apply
2020-09-10 11:04:29 +01:00
Ondřej Kuzník
fdbeb69fd8
ITS#9043 Nul-terminate csn string
2020-09-10 11:03:37 +01:00
Howard Chu
bf40306581
ITS#9043 tweak syncprov play_sessionlog logging
...
Don't log cookiecsn at top, it was already logged on receipt.
Only log the "control csn" and "too old" message once for each sid.
2020-09-09 18:02:49 +01:00
Quanah Gibson-Mount
00b14b1e28
ITS#9133 - Fix syncprov to be singular.
2020-08-10 23:41:07 +00:00
Ondřej Kuzník
43ebfa8fb4
ITS#6467 Make accesslog a possible sessionlog source
2020-07-22 22:25:10 +01:00
Ondřej Kuzník
31423439c5
ITS#9043 Make sure uuidstr is initialised on use
2020-07-08 12:54:08 +01:00
Ondřej Kuzník
e24a6bf5c1
ITS#8768 Do not update main CSN during delete phase
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
Ondřej Kuzník
3e5490f467
ITS#9043 More descriptive logs for syncrepl traffic and decisions
2020-06-22 18:20:22 +00:00
Ondřej Kuzník
f3952d947b
ITS#9059 Document why we do FIND_CSN
2020-05-22 16:57:53 +00:00
Ondřej Kuzník
709d805f84
ITS#9059 Skip mincsn check if sessionlog replay was successful
2020-05-22 16:57:53 +00:00
Ondřej Kuzník
f6d9fdc4f1
ITS#9043 Improve replication loggging
2020-04-14 09:58:03 +01:00
Quanah Gibson-Mount
f6ad222e41
Happy New Year!
2020-01-09 16:50:21 +00:00
Howard Chu
57dbe995b8
ITS#9146 syncprov: fix sessionlog init
2020-01-08 22:22:14 +00:00
Ondřej Kuzník
abcf0e8f23
ITS#9015 Don't generate contextCSN on empty DB
2019-05-08 15:42:12 +01:00
Ondřej Kuzník
1df2b85c32
ITS#9015 Generate contextCSN unless we're a pure replica.
...
Essentially reverts part of cd8ff37629
to
make sure there is always a contextCSN if the server is in charge of its
own serverID.
2019-05-08 15:42:12 +01:00
Ondřej Kuzník
117dcbc54d
Silence compiler warnings
2019-02-19 10:28:08 +00:00
Ondřej Kuzník
97a310b312
ITS#8731 Apply doc/devel/variadic_debug/04-variadic.cocci
2019-02-15 16:51:53 +00:00
Quanah Gibson-Mount
b45a6a7dc7
Happy New Year!
2019-01-14 18:46:16 +00:00
Quanah Gibson-Mount
3add82a3bb
ITS#8286 -- Add matching rules for attributes
...
Add matching rules for all cases where it was missing. Cleanup
incorrect types for a few attributes as well. Fix network-timeout
handling in back-ldap/meta/asyncmeta.
2018-12-18 19:14:06 +00:00
Howard Chu
9069cbe543
ITS#8616 don't check for existing value when deleting values
2018-05-24 17:53:10 +01:00
Howard Chu
0ba50a1d06
ITS#8843 check for NULL modlist
2018-05-02 16:51:49 +01:00
Quanah Gibson-Mount
59e9ff6243
Happy New Year
2018-03-22 15:35:24 +00:00
Howard Chu
08851a8200
ITS#8789 revert previous patch
...
And try another approach. Always write contextCSN updates, but
don't set dont_replicate for updates we want propagated.
2018-02-28 22:19:57 +00:00
Howard Chu
dc3b3be429
ITS#8486 Don't keep sl_mutex locked when playing the sessionlog
2018-02-11 16:47:47 +00:00
Howard Chu
4d1077ffa4
ITS#8800 remove originator check in syncprov_search_response
...
Let the entryCSN check do all the work. Reloading a server from an old
backup needs this to go thru.
2018-02-08 00:17:07 +00:00
Howard Chu
0eb577632f
ITS#8607 Don't record checkpoints
2018-02-08 00:16:50 +00:00
Howard Chu
ca7f697e14
ITS#8100 fixes for delta-syncrepl with empty accesslog
...
Update syncprov contextCSNs when context entry is added.
Fix accesslog to properly tag Add op when adding context entry.
2018-01-30 21:40:05 +00:00
Howard Chu
065b315f0d
fix syncprov_qtask race, test062 crashes
...
Keep s_mutex locked until we know we're removed from queue.
Remember qtask cookie so we can retract if ineeded when deleting
the overlay from running slapd.
config_delete is still unsafe, overlay_remove is running with active
threadpool instead of paused pool.
2017-10-13 17:28:28 +01:00
Quanah Gibson-Mount
fd5ad3ef39
ITS#8527 - Add additional debug logging on consumer/provider state when the consumer has a newer cookie than the provider
2017-10-11 14:32:25 -07:00
sca+openldap@andreasschulze.de
90835da72f
ITS#8578 - remove unused-variables in RE24 testing call (2.4.45)
2017-10-06 10:45:08 -07:00
Quanah Gibson-Mount
86105092bd
CHECK_CSN is a debug only flag for testing. It should always remain
...
behind LDAP_DEVEL
2017-09-26 11:30:50 -07:00
Quanah Gibson-Mount
7246da8a66
Whitespace cleanup
2017-09-26 10:33:01 -07:00
Ondřej Kuzník
9e156bf914
ITS#8444 Do not clear the pending operation when checkpointing
...
When a checkpoint happens, if we remove the CSN from the pending list,
accesslog won't pass it onto the accesslog DB. But in a delta-mmr
scenario, an accesslog entry without a CSN faces a race where it might
be applied twice - that usually fails and causes a full refresh, other
times it can cause a silent desync - both are undesirable.
2017-08-25 16:52:13 +01:00
Howard Chu
a9f462d615
ITS#8690 one more time
2017-08-04 20:58:07 +01:00
Howard Chu
c9e56b80f3
ITS#8690 fix again
2017-08-04 13:40:34 +01:00
Howard Chu
bcc6601091
Revert "ITS#8690 refix"
...
This reverts commit a5f3a2885c
.
2017-08-04 13:34:03 +01:00
Howard Chu
a5f3a2885c
ITS#8690 refix
...
Don't double-queue delete ops
2017-08-02 00:52:13 +01:00
Howard Chu
9827569ff0
ITS#8690 fix prev commit
2017-08-01 21:57:02 +01:00
Howard Chu
1fbc0dff88
ITS#8690 plug memleak on Delete ops
2017-07-21 19:04:08 +01:00
Quanah Gibson-Mount
1df85d3427
Happy New Year!
2017-01-03 12:36:47 -08:00
Hallvard Furuseth
23c5d6bbdd
ITS#8435 Fix uninited slap_callback.sc_writewait
2016-06-12 08:30:58 +02:00
Howard Chu
d6f3440d94
ITS#8365 partially revert ITS#8281
...
Must setup psearch before snapshotting ctxcsn
2016-02-02 19:41:13 +00:00