[cifs-protocol] DRS option bits

Hongwei Sun hongweis at microsoft.com
Wed Oct 28 20:23:22 MDT 2009


   The Flag DRS_PREEMPTED is used by the replication client DC to manage its own replicationQueue(5.154 in MS-DRSR), and it is not used between two DCs for replication.  The flag indicates that a particular replication operation was interrupted and re-enqueued. 

   The ReplicationQueue stores a sequence of replication operations to be processed by the DC. An implementation can choose its own way to process the queue, including determining when to preempt an operation.

   Please let us know if you need more information regarding this issue.



-----Original Message-----
From: tridge at samba.org [mailto:tridge at samba.org] 
Sent: Friday, October 23, 2009 2:05 AM
To: Hongwei Sun
Cc: cifs-protocol at samba.org; pfif at tridgell.net
Subject: RE: DRS option bits

Hi Hongwei,

 >       PE (DRS_PREEMPTED): Replication attempt is preempted by a higher priority replication request.

I'm getting errors about pre-emption in the logs sometimes, so I'd
like to understand this better. I don't see any mention of
'preemption' in the DRSR doc. Could you explain it please?

I suspect it is related to a DC doing two DRS replications in
parallel (as it seems to happen when I see a 2nd replication happen
while a first cycle is not complete).

Can you tell me if parallel replications with the same DsBind handle
are actually allowed? If they are, then it seems a bit ambiguous, as I
can't see how I would tell whether a particular request is a
continuation of an existing replication or a new one (assuming they
are on the same NC).

At the moment I've added code in our DRS server to refuse a 2nd
replication with the same DsBind handle if a previous cycle is not
complete. Is that what the Microsoft replication client expects?

Cheers, Tridge

More information about the cifs-protocol mailing list