summaryrefslogtreecommitdiff
path: root/source4/dsdb/repl/drepl_notify.c
AgeCommit message (Collapse)AuthorFilesLines
2011-08-13s4:dsdb: use tevent_ fn names instaed of legacy event_ onesSimo Sorce1-1/+1
2011-02-10ldb: use #include <ldb.h> for ldbAndrew Tridgell1-1/+1
thi ensures we are using the header corresponding to the version of ldb we're linking against. Otherwise we could use the system ldb for link and the in-tree one for include Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-11-28s4:dsdb/repl/drepl* - move "lib/messaging/irpc.h" include into "drepl_service.h"Matthias Dieter Wallnöfer1-1/+0
This is needed to fix a Tru64 "cc" warning regarding "enum drepl_role_master". Autobuild-User: Matthias Dieter Wallnöfer <mdw@samba.org> Autobuild-Date: Sun Nov 28 12:46:19 CET 2010 on sn-devel-104
2010-11-17s4-repl: removed the syncall_workaround codeAndrew Tridgell1-4/+0
this isn't needed any more Autobuild-User: Andrew Tridgell <tridge@samba.org> Autobuild-Date: Wed Nov 17 13:41:51 UTC 2010 on sn-devel-104
2010-11-17s4-repl: save the result of the last replication in repsFrom/repsToAndrew Tridgell1-24/+7
when a replication fails, we should add the failure to repsFrom when a notify fails, we need to save it to repsTo this ensures showrepl always shows the latest status
2010-11-17s4-repl: ensure we don't starve pending replication opsAndrew Tridgell1-2/+2
when there was a continuous sequence of notify ops, we could leave the replication ops starving. This ensures we run whichever was queued first
2010-11-08s4-repl: fixed replication notifications to RODCsAndrew Tridgell1-3/+11
We need a separate source dsa list for RODCs, as they are not in the repsFrom for our partitions, but are in the repsTo. This adds a new 'notifies' list, which contains all the source dsas for the DCs that we should send notifies to, but which we don't replicate from Autobuild-User: Andrew Tridgell <tridge@samba.org> Autobuild-Date: Mon Nov 8 06:57:43 UTC 2010 on sn-devel-104
2010-11-05s4:dsdb/drepl_notify: reuse dreplsrv_notify_operation structuresStefan Metzmacher1-0/+22
Otherwise we'll requeue the same notify events on and on. (gdb) p *((struct dreplsrv_service *) 0x1b52190)->ops.notifies $8 = {prev = 0xe4cb30, next = 0x1a25440, service = 0x1b52190, uSN = 123905, source_dsa = 0x164c100, is_urgent = false, replica_flags = 29} (gdb) p *((struct dreplsrv_service *) 0x1b52190)->ops.notifies->next $9 = {prev = 0x80e000, next = 0x1b7bf70, service = 0x1b52190, uSN = 123589, source_dsa = 0x1a2d930, is_urgent = false, replica_flags = 29} (gdb) p *((struct dreplsrv_service *) 0x1b52190)->ops.notifies->next->next $10 = {prev = 0x1a25440, next = 0x1d0c310, service = 0x1b52190, uSN = 1587, source_dsa = 0x13d3210, is_urgent = false, replica_flags = 29} (gdb) p *((struct dreplsrv_service *) 0x1b52190)->ops.notifies->next->next->next $11 = {prev = 0x1b7bf70, next = 0x1ba1420, service = 0x1b52190, uSN = 123905, source_dsa = 0x164c100, is_urgent = false, replica_flags = 29} (gdb) p *((struct dreplsrv_service *) 0x1b52190)->ops.notifies->next->next->next->next $12 = {prev = 0x1d0c310, next = 0x1c43510, service = 0x1b52190, uSN = 123589, source_dsa = 0x1a2d930, is_urgent = false, replica_flags = 29} (gdb) p *((struct dreplsrv_service *) 0x1b52190)->ops.notifies->next->next->next->next->next $13 = {prev = 0x1ba1420, next = 0xed97b0, service = 0x1b52190, uSN = 1587, source_dsa = 0x13d3210, is_urgent = false, replica_flags = 29} (gdb) p *((struct dreplsrv_service *) 0x1b52190)->ops.notifies->next->next->next->next->next->next $14 = {prev = 0x1c43510, next = 0xe4ce80, service = 0x1b52190, uSN = 123905, source_dsa = 0x164c100, is_urgent = false, replica_flags = 29} We can reuse this operations, while they're not yet started. metze Autobuild-User: Stefan Metzmacher <metze@samba.org> Autobuild-Date: Fri Nov 5 07:15:04 UTC 2010 on sn-devel-104
2010-10-01s4-repl: use the GC principal name for DRS replication connectionAndrew Tridgell1-6/+10
this is required when talking to RODCs (for notify calls), and is good practice for all DCs Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2010-07-09s4:drepl_notify: hide some bugs from the make test outputStefan Metzmacher1-1/+12
It's useless to get messages like this every few seconds: dreplsrv_notify: Failed to send DsReplicaSync to edbf4745-2966-49a7-8653-99200f1c9430._msdcs.samba2003.example.com for CN=Configuration,DC=samba2003,DC=example,DC=com - NT_STATUS_OBJECT_NAME_NOT_FOUND : WERR_BADFILE We have a non bug regarding non-linked DN attributes and changes of the target DN. metze
2010-05-13s4: Do not display by default the message Failed to send DsReplicaSync is ↵Matthieu Patou1-1/+6
other host is just unreachable Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-04-27s4-repl: added a workaround for WERR_DS_DRA_NO_REPLICA DsReplicaSync errorsAndrew Tridgell1-2/+17
The 0xc0002104/WERR_DS_DRA_NO_REPLICA seems to be spurious, and can be avoided by setting DRSUAPI_DRS_SYNC_ALL in the DsReplicaSync request. We need to investigate this further, and find out from MS why this is sometimes being sent, even when the target DC has the right repsFrom entries
2010-04-27s4-repl: don't delete repsTo entry on DsReplicaSyncAndrew Tridgell1-46/+12
we rely on the highestUSN counters instead. W2K8 does not resend DsUpdateRefs each time, and the WSPP docs do not indicate that repsTo should be deleted
2010-03-12s4:dsdb/repl: make use of use tevent_req based dcerpc_binding_handle stubsStefan Metzmacher1-9/+16
metze
2010-03-05s4:repl - change also here the counter variables to "unsigned"Matthias Dieter Wallnöfer1-2/+3
I changed also some "uint32_t" to "unsigned" since the LDB interface doesn't specify the bitlength of the unsigned type.
2010-03-01s4:drepl_notify: don't look at the internals of 'struct rpc_request'Stefan Metzmacher1-1/+9
metze
2010-03-01s4:dsdb/repl: make use of explicit dcerpc_*_recv functionsStefan Metzmacher1-1/+1
metze
2010-02-24s4/drs: Propagate drsuapi_DsReplicaSync changes in source baseKamen Mazdrashki1-4/+8
2010-01-28s4-drs: Reads uSNUrgent and sets Urgent Replication Bit for DS_ReplicaSync ↵Fernando J V da Silva1-7/+23
when necessary If an urgent replication is necessary, so the uSNUrgent stored is equal to the uSNHighest stored, then when sending the DS_ReplicaSync message it sets the DRSUAPI_DRS_SYNC_URGENT bit on DRS_OPTIONS. Signed-off-by: Fernando J V da Silva <fernandojvsilva@yahoo.com.br> Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-01-14s4-drepl: switch drepl over to using the generic DRS options flagsAndrew Tridgell1-3/+3
WSPP uses a single set of flags for all these DRS operations.
2010-01-14s4-drs: Store uSNUrgent for Urgent ReplicationFernando J V da Silva1-1/+1
When a object or attribute is created/updated/deleted, according to [MS-ADTS] 3.1.1.5.1.6, it stores the uSNUrgent on @REPLCHANGED for the partitions that it belongs. Signed-off-by: Andrew Tridgell <tridge@samba.org>
2010-01-13s4:dsdb/repl: reorder dreplsrv_op_notify* functionsStefan Metzmacher1-53/+50
This make the whole async dreplsrv_op_notify_send/recv() readable. metze
2010-01-13s4:dsdb/repl: change dreplsrv_op_notify_send/recv() to tevent_reqStefan Metzmacher1-68/+74
metze
2010-01-04s4:dsdb/repl: convert dreplsrv_out_drsuapi_send/recv to tevent_reqStefan Metzmacher1-7/+11
metze
2009-12-21s4-repl: lower debug level of a common messageAndrew Tridgell1-1/+1
2009-09-19s4:dsdb Print the partition we failed to suggest replication forAndrew Bartlett1-1/+2
2009-09-18s4-server: kill main daemon if a task fails to initialiseAndrew Tridgell1-1/+1
When one of our core tasks fails to initialise it can now ask for the server as a whole to die, rather than limping along in a degraded state.
2009-09-14s4-repl: fall back to repsFrom if repsTo not setAndrew Tridgell1-2/+4
Windows does not seem to be always setting up repsTo using DsUpdateRefs(). For now we will fall back to using repsFrom if repsTo is empty. This is almost certainly incorrect, but it does get notification based replication working with both w2k3 and w2k8.
2009-09-13s4-repl: added a preiodic notification check to the repl taskAndrew Tridgell1-0/+426
The dreplsrv_notify code checks the partition uSN values every N seconds, and if one has changed then it sends a DsReplicaSync to all the replication partners listed in the repsTo attribute for the partition.