2.16 CHANGE_SET_ENTRY

The CHANGE_SET_ENTRY structure represents an item that has changed in the source replica relative to the destination replica.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

ChangeDataSize

ChangeDataFormat

...

ReplicaGid (16 bytes)

...

...

ChangeVersion

...

...

OriginalChangeVersion

...

...

CreateVersion

...

...

SyncGid (24 bytes)

...

...

WinnerExists

WinnerSyncGid (24 bytes)

...

...

...

SyncChange

...

WorkEstimate

...

Reserved1

A

Reserved2

Reserved3

Reserved4

Reserved5

Reserved6

ChangeDataSize (4 bytes): The size, in bytes, for the CHANGE_SET_ENTRY structure excluding the size of this field.

ChangeDataFormat (8 bytes): This value MUST be set to 7.

ReplicaGid (16 bytes): The ID for the replica delivering this change.

ChangeVersion (12 bytes): A CLOCK_VECTOR_ELEMENT structure which describes the revision version of this change.

OriginalChangeVersion (12 bytes): A CLOCK_VECTOR_ELEMENT structure which MUST match the value in the ChangeVersion field.

CreateVersion (12 bytes): A CLOCK_VECTOR_ELEMENT structure which describes the revision version of this Item when it was created.

SyncGid (24 bytes): The ID for the file or directory affected by this change.

WinnerExists (1 bytes): The value of 1 indicates that there is a WinnerSyncGid field.

WinnerSyncGid (24 bytes): The ID for the winning object.

SyncChange (4 bytes): This field MUST contain one of the following values:

Value

Meaning

0x00000000

Indicates that this entry is a change for a file item.

0x00000001

Indicates that this entry is a change for a deleted file item.

0x00010000

Indicates that this entry is the beginning of a range of changes.

0x00020000

Indicates that this entry is the end of a range of changes.

WorkEstimate (4 bytes): The work estimate for the change. This value SHOULD be set to 1.

Reserved1 (2 bytes): This value MUST be set to 0.

A - IsLearnedKnowledgeProjected (1 byte): This value will be set to 0 for a regular sync session and 1 for a change batch during a full enumeration sync session.

Reserved2 (4 bytes): This value MUST be set to 0.

Reserved3 (4 bytes): This value MUST be set to 0.

Reserved4 (4 bytes): This value MUST be set to 0.

Reserved5 (4 bytes): This value MUST be set to 0.

Reserved6 (1 byte): This value MUST be set to 0.