diff options
author | Andrew Bartlett <abartlet@samba.org> | 2017-07-21 17:52:04 +1200 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2017-07-22 07:45:31 +0200 |
commit | 6c45db6779615f70eb2c81377685c9707d6b548d (patch) | |
tree | 34673e27e9fa236c83167861ea8eeec158910727 /source4/dsdb/repl/drepl_service.h | |
parent | 19dfccea744a843511d9c4ca2b5adbd648284250 (diff) | |
download | samba-6c45db6779615f70eb2c81377685c9707d6b548d.tar.gz |
s4-drepl: Use tevent_schedule_immediate() in DsReplicaSync handler
When we are sent a DsReplicaSync() we should work on inbound replication
(ideally from the requested source, but so far we just start the whole queue)
right away, not after 1 second.
We should also target inbound replication, not any outbound replication
notification that may happen to be due.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=12921
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Sat Jul 22 07:45:31 CEST 2017 on sn-devel-144
Diffstat (limited to 'source4/dsdb/repl/drepl_service.h')
-rw-r--r-- | source4/dsdb/repl/drepl_service.h | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/source4/dsdb/repl/drepl_service.h b/source4/dsdb/repl/drepl_service.h index 6b85ad6c672..4b0e43feaa7 100644 --- a/source4/dsdb/repl/drepl_service.h +++ b/source4/dsdb/repl/drepl_service.h @@ -187,21 +187,13 @@ struct dreplsrv_service { struct tevent_timer *te; } periodic; - /* some stuff for running only the pendings ops */ + /* some stuff for running only the incoming notify ops */ struct { - /* - * the interval between notify runs - */ - uint32_t interval; - - /* - * the timestamp for the next event, - * this is the timstamp passed to event_add_timed() + /* + * here we have a reference to the immidicate event that was + * scheduled from the DsReplicaSync */ - struct timeval next_event; - - /* here we have a reference to the timed event the schedules the notifies */ - struct tevent_timer *te; + struct tevent_immediate *im; } pending; /* some stuff for notify processing */ |