Oct 19

Lync; ABSCONFIG & corrupt addressbook; Fixed!!

Situation

When you’ve implemented Lync within your environment and you have modified the address book, you might get a similar message in your event viewer:

A full data file is corrupt.

Path: ‘\\<SERVERFQDN>\<SHARE>\1-WebServices-1\ABFiles\00000000-0000-0000-0000-000000000000\00000000-0000-0000-0000-000000000000\F-0f4e.lsabs’ – file corrupted: invalid attribute id 0 in contact. Index: 38 Guid: {301db040-7ab9-47d8-a1e4-00e4bbc1cbaf} Offset: 484

Cause: The Address Book Server is attempting to read one of the full data files in order to generate a delta file. The full data file is corrupt and the delta file cannot be generated.

Resolution:

Examine the details in the associated event log entry to determine which full data file is corrupt and first save it away for possible use by PSS. Then delete the corrupt file. This will result in a missing delta file, but the client will get the next oldest delta file instead.

Found so far…

Now I’ve found a blog entry: http://www.lync-blog.nl/?p=504&lang=en regarding the ABSConfig tool. The address book is indeed modified to only include only the Lync enabled users.

However, when I’m looking into the dbo.AbAttribute is see differences in the RTC and RTCLOCAL databases…. The blog mentioned earlier provides a solution to restore the address book without the filters… However, that didn’t solve my issue… We’ve got a whole lot of users and contacts with the same value in the mail attribute that resulted in double entries in the default address book.

Great news… It is fixed!!

You can follow these steps to fix the address book and have a filter on it.

  1. Request the hotfix from Microsoft using the following reference: http://support.microsoft.com/kb/2621857.
    1. Unpack the file and copy the OCSReskit.msi to the Front-end server(s).
  2. Request the hotfix from Microsoft using the following reference: http://support.microsoft.com/kb/2621854/
    1. Unpack the file and copy the OCSCore.msp to the Front-end server(s).
  3. Uninstall the current Lync resource kit from the Front-end server(s);
  4. Run the OCScore.msp on all Front-end(s) servers;
  5. Type in: Install-CsDatabase -Update -ConfiguredDatabases -SqlServerFqdn <EEBE.Fqdn> -UseDefaultSqlPaths

    Remark: You only need to run this once on a Front-end

  6. Install the OCSReskit.msi

    If you’ve installed it on the default location, you can run the ABSConfig.exe from the following location: C:\Program Files\Microsoft Lync Server 2010\ResKit. In the screenshot below, I’ve added a filter that only objects that have the msRTCSIP-PrimaryUserAddress attribute filled in.

  1. When pressing Apply, Regeneration of the User database will be done. Look at the Lync Server part of the Eventviewer to validate that you see the EventId 30024:

    This EventId is required for all domains in the Active Directory Forest where Lync is deployed.

  2. Once step 7 is finished, you need to update the address book by typing in:

Update-CsAddressBook

  1. In the Lync Server part of the Eventviewer (on the server where you’ve performed step 7) look for EventId 21056 that the LS Address Book Server is finished.

Thank you Microsoft for getting this fixed within short period of time!

Permanent link to this article: http://www.reijling.nl/?p=769

Leave a Reply

Your email address will not be published.