Commit Graph

613 Commits

Author SHA1 Message Date
Quanah Gibson-Mount
0dbbe8c012 ITS#8040 - Fix missing ifdefs for LAZY_COMMIT 2020-02-02 19:00:34 +00:00
Quanah Gibson-Mount
707d2a9211 ITS#8966 - Remove DO_DSEE ifdef Remove ifdef for DO_DSEE as it's required to be defined for syncrepl.c to compile 2020-02-02 19:00:31 +00:00
Quanah Gibson-Mount
f6ad222e41 Happy New Year! 2020-01-09 16:50:21 +00:00
Ondřej Kuzník
7ca538ff87 ITS#9015 Treat an empty cookie from a FALLBACK search as a success 2019-05-08 15:42:12 +01:00
Howard Chu
47102fcced Add persist support 2019-03-20 08:47:48 -07:00
Ondřej Kuzník
76df74dbea ITS#8731 Apply doc/devel/variadic_debug/07-shortcut.cocci 2019-02-15 16:51:53 +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
Howard Chu
e8c62bf8b4 ITS#8966 add changelog support to syncrepl consumer
Tested against DSEE7. The DSEE binaries must be in your path to run the test script.
2019-01-29 18:51:43 -08:00
Quanah Gibson-Mount
b45a6a7dc7 Happy New Year! 2019-01-14 18:46:16 +00:00
Howard Chu
ff6a671e64 MSAD dirsync fixes
Don't hijack whenCreated attribute for createTimestamp
Don't add RDN to entry on modrdn
free cookie on cleanup
2018-12-22 09:08:10 -08:00
Howard Chu
b4364baca7 Dirsync delete/modrdn fixes
Delete could try to queue a NULL syncCSN (dirsync has none)
Modrdn could try to delete a nonexistent oldRDN (leftover from #7144)
2018-12-22 05:21:56 -08:00
Howard Chu
9cc97ea9e1 MS AD DirSync support
Requires "attribute_option range=" in config.
No test script provided yet, since testing requires an actual AD server.
2018-12-17 16:11:25 -08:00
Howard Chu
12dbcc0eb3 More for revert batched writes 2018-12-14 12:39:07 -08:00
Howard Chu
79ced664b8 Revert batched writes experimental code
Reverts
bea2c5d438
535cf92ff4
5a3a54333c
afa9a9c3e0
due to backend deadlocks
2018-12-13 06:34:54 -08: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
e0cc94a0b7 ITS#8789 avoid unnecessary writes of context entry
If syncprov is present, only write contextCSN attribute on
actual state changes, not on per-entry modifications.
Continue to update in-memory cookieState. Saves overhead,
syncprov will eventually checkpoint it into the DB anyway.
2018-02-21 19:51:59 +00:00
Howard Chu
0d7489b908 ITS#8752 fix syncrepl deadlock from updateCookie
Must release cookieState->cs_mutex before invoking backend.
Add a condvar to serialize calls of updateCookie, so we can
release the mutex and still update sequentially.

Also added tid logging, useful in conjunction with
7ab0e1aff0cc48cdfb299ca7dbd27900a9e3d1a8
2017-10-13 17:28:57 +01:00
Ivan Nejgebauer
cb9a4d01bc ITS#8037 - Add support for relax control to delta-syncrepl 2017-10-11 14:31:45 -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
Howard Chu
70e54d2527 ITS#8752 fix syncrepl null_callback
Make sure it's last in callback stack
2017-10-05 22:13:39 +01:00
Ondřej Kuzník
ec5af7b5e7 ITS#6545 Update accesslog format and syncrepl consumer
Make two successive modifications of the same attribute separate. This
lets the consumer interpret the log entry the same way as the server
that produced it.

Still depends on the log entry attributes being read in the same order
as they were written.
2017-04-07 14:39:07 -07:00
Howard Chu
e12ca8b6fe Fixes for multiple threadpool queues
Remove poolq_hash, it wasn't distributing work evenly to the queues.
Just walk through all queues and use the one with smallest
active+pending count. Since pool_retract also relied on the hash,
a different means of locating the thread to retract was needed.
Add pool_submit2 which returns the threadpool task structure,
and record which poolq this task lives on.
2017-03-15 11:13:09 +00: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
92724fd39e ITS#8432 fix infinite looping mods in delta-mmr 2016-06-09 22:37:54 +01:00
Howard Chu
3efde72cbe ITS#8413 fix prev commit
Filter needs AttributeAssertions
2016-04-28 10:54:47 +01:00
Howard Chu
b61d02d942 ITS#8413 don't use str2filter on precomputable filters
and more importantly, avoid escaping requirements that str2filter has
2016-04-28 03:04:16 +01:00
Quanah Gibson-Mount
6c4d6c880b Happy New Year! 2016-01-29 13:32:05 -06:00
Howard Chu
ad93b9e652 ITS#8277 simpler check for syncrepl on config DB
Windows mutexes are recursive so the trylock test will succeed
even though the mutex is already locked. Just compare be pointers.
2015-10-20 21:30:00 +01:00
Howard Chu
bea2c5d438 More for batched writes
Only usable if backend supports txns
2015-08-30 05:46:01 +01:00
Howard Chu
535cf92ff4 More for batched writes 2015-08-30 05:34:42 +01:00
Howard Chu
5a3a54333c More for batched write 2015-08-30 05:14:17 +01:00
Howard Chu
2eaf8eb213 ITS#8231 fix ITS#8042 regression 2015-08-29 18:29:32 +01:00
Howard Chu
afa9a9c3e0 Use batched write txns in refresh
Experimental - write 500 updates per txn instead of 1:1
2015-08-14 17:43:03 +01:00
Quanah Gibson-Mount
2c34d2fda6 ITS#8120 Move final CHECK_CSN block to before the mutex is unlocked. 2015-04-29 22:30:17 -05:00
Howard Chu
525aa23800 ITS#8040 document lazycommit 2015-04-08 23:18:03 +01:00
Quanah Gibson-Mount
1705fa7e55 Happy New Year 2015-02-11 15:36:57 -06:00
Howard Chu
a32a2da33a ITS#8040 experimental Lazy Commit 2015-02-02 10:50:22 +00:00
Howard Chu
c4b43c0077 More for presentlist_free 2015-01-31 01:12:54 +00:00
Howard Chu
4929ad5e81 More for presentlist (ITS#8042) 2015-01-31 01:03:23 +00:00
Howard Chu
3f5e705996 Fix prev commit 2015-01-30 08:06:11 +00:00
Howard Chu
1fa702e968 Streamline presentlist
This reduces presentlist memory usage by about 50%. It's still
about 2.5x greater than it should be.
2015-01-30 00:54:21 +00:00
Howard Chu
84fde1bb02 ITS#8038 free presentlist at end of refresh 2015-01-29 05:15:33 +00:00
Howard Chu
b53d813413 ITS#8035 plug memleaks in syncrepl 2015-01-27 20:29:34 +00:00
Howard Chu
047f275987 Fix 0e66a3d1bf
clear rc, otherwise syncrepl stops
2015-01-14 20:27:49 +00:00
Howard Chu
fccca0ead9 Minor cleanup (coverity) 2015-01-14 16:59:54 +00:00
Howard Chu
0e66a3d1bf check ber_scanf(syncUUIDs) result (coverity) 2015-01-14 10:13:16 +00:00
Leo Yuriev
8ba5a27829 ITS#7968 add locks for syncrepl cookiestate
Mutex must be held even for a read-access of a cookie state,
as there may be a race with write in other thread.
2014-12-05 19:44:19 +00:00
Howard Chu
b0225e8e60 ITS#7976 fix delta-mmr/accesslog interaction 2014-10-30 15:00:13 +00:00