2.10.1 User Header Format

A file implementing the merge log file format stores information in the First data file user header field and the Second data file user header field in the recoverable storage header file, as specified in section 2.2.4.1. The structure of that information is as follows.


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

Signature

DocIDIndexMax

ComponentIDAVDLBackup

cKeys

cIndexes

oSplitKey

ulMergeState

UlIndexVersion (optional)

Signature (4 bytes): A 32-bit unsigned integer that specifies the signature of the merge log user header. This MUST be 0x44484c4d.

DocIDIndexMax (4 bytes): A 32-bit unsigned integer that specifies the MaxDocID value for target full-text index component.

ComponentIDAVDLBackup (4 bytes): A 32-bit unsigned integer that specifies the ComponentID of AVDL backup file that stores statistics for Properties of the items in the target content index file. Statistics kept in AVDL backup file cover data up to the split key identified by the split key descriptor field in the merge log data file.

cKeys (4 bytes): A 32-bit unsigned integer that specifies the number of content index keys present in the target content index file up to the split key identified by the Split key descriptor field in the merge log data file.

cIndexes (4 bytes): A 32-bit unsigned integer that specifies the number of source full-text index components participating in this merge.

oSplitKey (4 bytes): A 32-bit unsigned integer that specifies value of the offset (in bytes) of the Split key descriptor field from the beginning of the Merge log signature field in the merge log data file.

ulMergeState (4 bytes): A 32-bit unsigned integer that specifies the stage of merge. It MUST be one of the values from the following table.

Value

Description

0x00000000

Document set files merge in progress.

0x00000001

Document set files merge is complete.

0x00000002

Content index files merge in progress.

ulIndexVersion (4 bytes, optional): A 32-bit unsigned integer whose 2 higher bytes specify the format version of the target full-text index component. This MUST be 0x00520000 or 0x00530000 or 0x00540000. This field is only present when the value of the Merge log signature field in the merge log data file is "Extended shadow merge log file" or "Extended master merge log file". If this field is missing, the format version of the target full-text index component is 0x0052.<25>