Applies to: Exchange Server 2007 SP1, Exchange Server 2007
Topic Last Modified: 2007-09-05

This topic explains how to troubleshoot problems that are related to offline address book (OAB) downloads by using Microsoft Office Outlook client diagnostic logging and reviewing the event log entries. In addition to discussing how to review event log entries, this topic provides further details related to the following OAB download issues:

Microsoft Office 2003 Service Pack 1 (SP1) and Outlook 2003 Service Pack 2 (SP2) always generate an event in the Application event log whenever Outlook performs a full OAB download. If this download fails for any reason, Outlook logs an event ID 27 with an event type of Error and a description that contains information about the failure. In this case, the logged event also includes a result error code that you can use to help isolate the problem.

You can resolve OAB download issues by reviewing event log entries, which involves examining the error code and OAB sequence number. Then, you can compare the names of address lists on the Exchange server with the Outlook client.

Reviewing Event Log Entries

The following is an example of the hexadecimal data portion of an event log entry logged when the user started Outlook 2003 for the first time in Cached Exchange Mode.

0000: 01 00 00 00 00 00 00 00

0008: 00 00 00 00 75 00 00 00

0010: 75 00 00 00 00 00 00 00

0018: 00 00 00 00 00 00 00 00

0020: e9 fd 00 00 02 a3 48 9b

0028: ba 12 c4 01 00 00 00 00

0030: 00 00 00 00 00 00 00 00

0038: 00 00 00 00 00 00 00 00

0040: 00 00 00 00 00 00 00 00

0048: 00 00 00 00 00 00 00 00

0050: 00 00 00 00 00 00 00 00

0058: 00 00 00 00 00 00 00 00

0060: 00 00 00 00 00 00 00 00

0068: 00 00 00 00 00 00 00 00

0070: 00 00 00 00 00 00 00 00

0078: 00 00 00 00 00 00 00 00

0080: 00 00 00 00 00 00 00 00

0088: 00 00 00 00 00 00 00 00

0090: 5c 00 47 00 6c 00 6f 00

0098: 62 00 61 00 6c 00 20 00

00a0: 41 00 64 00 64 00 72 00

00a8: 65 00 73 00 73 00 20 00

00b0: 4c 00 69 00 73 00 74 00

00b8: 00 00 00 00 65 38 31 30

00c0: 35 35 61 38 2d 62 64 38

00c8: 38 2d 34 33 34 62 2d 39

00d0: 37 31 37 2d 64 34 33 37

00d8: 61 62 34 35 31 35 36 39

00e0: 00 65 38 31 30 35 35 61

00e8: 38 2d 62 64 38 38 2d 34

00f0: 33 34 62 2d 39 37 31 37

00f8: 2d 64 34 33 37 61 62 34

0100: 35 31 35 36 39 00

In all OAB event log entries, the first byte of data contains the error code in hexadecimal format. The error code indicates the cause of the full download. In the previous example, the first byte of data is contained in:

0000: 01 00 00 00 00 00 00 00

In this example, the first byte is 01.

The following table provides a description of the error codes.

Offline address book error codes

Error code Description

1

You do not have any OAB files on your computer, or the OAB files could not be opened.

2

You forced a full download manually.

3

The name of the OAB could not be obtained on the client. This behavior occurs when you create a new profile.

4

The GUID of the OAB could not be obtained on the client.

5

The name of the OAB was missing from the server. A full download is not expected to start or succeed, but it is logged anyway.

6

The GUID of the OAB was missing from the server. A full download is not expected to start or succeed, but it is logged anyway.

7

The server's OAB name and the client's OAB name are different.

8

The server's GUID and the client's GUID are different. This behavior can occur if the server had to regenerate a new OAB with the same name and discarded the old OAB files. This can also occur if the Outlook client is moved between different Active Directory directory service forests.

9

The client's sequence number is larger than that of the server.

0a (10)

You want detailed information in the OAB, but there is no corresponding OAB file on your client. This behavior may occur if you manually force a download of the OAB, and then you clear the Download changes since last Send/Receive check box.

0b (11)

At least one incremental OAB file was missing from the server.

0c (12)

The sum total of the incremental files to download may not be greater than one-eighth of the full OAB file.

0d (13)

You have the Allow SRS Full OAB Download registry key set to 1, and your Send/Receive setting was set to always do a full download.

0e (14)

You do not have the locale of the OAB installed on your system, and you did a manual full download. Typically, Outlook updates the address book either once a month, or when you download manually. Outlook uses these methods to update the address book to avoid a condition that would cause a full download every day.

0f (15)

Applying the incremental file to the OAB file failed for some reason.

You can use error codes to determine why a 0f error occurred. After you have identified the root cause, you can then take steps to resolve the issue. To do this, follow these steps:

  1. Locate event ID 27 in the Application event log with "Starting OAB Download" in the Description section.

  2. Locate the reason codes in the Description section of the event that may contain some or all the following asserts:

    • 0050: 7a 65 61 7a 61 74 61 7a zeazataz

    • 0058: 70 69 61 7a 7a 65 61 7a piazzeaz

    • 0060: 61 74 61 7a 70 69 61 7a atazpiaz

  3. Interpret these reason codes by using the following:

    • "zaez" is an assert for "signature mismatch."

    • "zata" is an assert for MAPI_E_UNEXPECTED_ID.

    • "zaip" means "HrApplyOABDiffs failed. Must download full."

  4. Depending on the data in the event log, you might need to install the Exchange hotfix that is mentioned in Microsoft Knowledge Base article 895476, Outlook may receive a full download instead of an incremental download when Outlook downloads the offline address book in Exchange Server 2003.

The following table provides examples of some of the descriptions that might appear in these events.

Outlook 2003 event log sample descriptions

Event log entry description field Description

"OAB ModDif failed. (Details record in event data)"

"OAB (Offline Address Book) files are invalid. Replaced with stub. (Last errors in event data)"

Indicates that Outlook was unable to perform an incremental OAB download. When this occurs, Outlook attempts a full OAB download.

"Starting OAB Download"

Indicates that a full OAB download is starting and indicates the cause of the download.

"OAB Download Succeeded"

Indicates that a full OAB download has completed successfully.

In addition to the result error code, you can gather the following information from the Application event log data:

  • OAB sequence number

  • Server-side address list name that is being used to populate the offline address list

  • GUID for the full OAB file download

You can use this information to help identify why you are seeing particular behavior occurring with respect to differential or full OAB downloads.

Offline Address Book Sequence Number

Both Outlook and Exchange Server use the OAB sequence number to determine the OAB files to be downloaded to Outlook. Depending on the sequence number that is found on the client and on the cumulative size of the differential files, either a differential download or a full download of the OAB occurs. You can verify the sequence numbers by examining the data portion of the logged event.

The OAB error code is found on the first line of the event data (offset 0001). The OAB sequence numbers for the client and the server are found on the second line of the event log data (offset 0008). The following is an example of such data:

  • 0000: 09 00 00 00 00 00 00 00 ........

  • 0008: 9b 00 00 00 9a 00 00 00 ........

In this example, the address book error code is 09, or simply 9. As shown in the first table in this topic, this error code indicates that the client's sequence number is larger than the server's sequence number. The client sequence number is contained in the first four bytes (9b in this example), and the server sequence number is in the second four bytes (9a in this example).

Server-Side Address List Name

In a scenario where the client's OAB and the Exchange server's offline address list names are mismatched or missing, a full OAB download occurs. In this case, the generated result error code is 3, 5, or 7. You can verify the OAB (and offline address list) name by examining the data portion of the logged event.

The name of the list that Exchange Server is using to populate the offline address list on the server can be found starting on the nineteenth line of the event data (offset 0090). The name of the list that Outlook is using can be found starting on the twenty-fourth line of the event data (offset 00b8). The following is an example of such data:

0090: 5c 00 47 00 6c 00 6f 00 \.G.l.o.

0098: 62 00 61 00 6c 00 20 00 b.a.l. .

00a0: 41 00 64 00 64 00 72 00 A.d.d.r.

00a8: 65 00 73 00 73 00 20 00 e.s.s. .

00b0: 4c 00 69 00 73 00 74 00 L.i.s.t.

00b8: 00 00 5c 00 47 00 6c 00 .\.G.l.

00c0: 6f 00 62 00 61 00 6c 00 o.b.a.l.

00c8: 20 00 41 00 64 00 64 00 .A.d.d.

00d0: 72 00 65 00 73 00 73 00 r.e.s.s.

00d8: 20 00 4c 00 69 00 73 00 .L.i.s.

00e0: 74 00 00 00 38 62 32 61 t...e810

In this example, the default global address list (GAL) is being used for the offline address list.

Offline Address Book GUID

In addition to using matched address list names, both Exchange and Outlook use a matching GUID to make sure that they stay synchronized. In the scenario where the Outlook OAB GUID does not match the GUID used by the Exchange server, a full OAB download occurs. The generated OAB result error code is 4, 6, or 8. You can verify the OAB GUID by examining the event data.

The GUID used by Exchange Server starts at offset 00b8. The GUID used by Outlook starts at offset 00e0. The following is an example of such data:

00b8: 00 00 00 00 65 38 31 30 ....e810

00c0: 35 35 61 38 2d 62 64 38 55a8-bd8

00c8: 38 2d 34 33 34 62 2d 39 8-434b-9

00d0: 37 31 37 2d 64 34 33 37 717-d437

00d8: 61 62 34 35 31 35 36 39 ab451569

00e0: 00 65 38 31 30 35 35 61 .e81055a

00e8: 38 2d 62 64 38 38 2d 34 8-bd88-4

00f0: 33 34 62 2d 39 37 31 37 34b-9717

00f8: 2d 64 34 33 37 61 62 34 -d437ab4

0100: 35 31 35 36 39 00 51569

If the GUIDs of the Outlook OAB and the Exchange computer do not match, you need to delete the existing OAB files and perform a full OAB download.

For More Information

For more information about OABs, see Managing Offline Address Books.