OAB changes in Exchange 2003 SP2

Many people are aware of the changes in Exchange 2003 SP2 with the V4 OAB.  What many are not aware of are the changes with the other two versions of the OAB, V3a and V2.

Starting with SP2, when a change is done in your environment that would have required a full download of the OAB previously, we now actually throw an event that says:

Event ID : 9360
Category : OAL Generator
Source : MSExchangeSA
Type : Error
Generated : 4/17/2006 10:52:34 AM
Machine : ServerName
Message : OALGen encountered an error while generating the changes.oab file for version 2 and 3 differential downloads of address list '\Global Address List'. The offline address list has not been updated so clients will not be able to download the current set of changes. Check other logged events to find the cause of this error.

If the cause of the problem was intentional or cannot be resolved, OALGen can be forced to post a full offline address list by creating the DWORD registry key 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeSA\Parameters\OAL post full if diff fails' and setting it to 1 on this server. When OALGen next generates the offline address list, clients will perform a full OAB download. After that time, the registry key should be removed to prevent further full downloads.

- Default Offline Address List

Read that error again...  It is telling you that the server has stopped generating OAB for those older versions.  So your clients that are not running Outlook 2003 SP2 and that are using OSTs will probably give an error when trying to download the OAB.

The good news is that prior to that error we throw another event that explains what happened.  For instance you may see the following:

Event ID : 9340
Category : OAL Generator
Source : MSExchangeSA
Type : Warning
Generated : 4/17/2006 10:52:34 AM
Machine : ServerName
Message : A new parent Legacy Exchange DN container value '/o=Organization/ou=Site/cn=NewRecipientsContainer' was found during generation of the differential update file for offline address list '\Global Address List'. This will force clients using this offline address list to do a full download of the offline address list.

Now this is useful.  If I go to that site I may find a recipient container that is not needed and I could remove that container.  Or perhaps it is an X500 address that was added with a typo to a mailbox.  I can fix that and then next time the OAB generation run we should be fine.

For more information regarding this, look at Dave Goldman's blog.  It is kind of deep, but if you take the time to read it, you will learn a lot.