Tuesday, October 2, 2012

KB2688078 gives ECMA's headaches

Let me make this clear from the start. This 'fix' is NOT supported by Microsoft.

I've seen a few people in the forum have this problem and have also run into this issue at a few of my customers. People are having trouble running ECMA2 Management Agents after applying this hotfix for FIM 2010 RTM. One of the threads dealing with this problem can be found here. There are numerous very good suggestions on how to fix this problem and all of them should be checked for sure as they may be the cause as well.

The first time, I ran into this problem was late at night and there was no time to do extensive troubleshooting. However, today I ran into the same problem and with good help of the customer representative, we found a remedy and a possible cause for the problem. Now, I'm pretty sure that this is NOT supported by Microsoft, but if you're in a tight spot and pressed for time (we needed to get a production system up and running) - well, then this may just help you.

The problem seem to appear because the file Microsoft.MetadirectoryServicesEx.dll is NOT updated when applying this patch (it sits under Bin\Assemblies). The reason for the lack of updating is properly that the new version has exactly the same version number as the existing file (if you're on patch level 4.0.3606.2). And then - even though it is a newer file - Windows Installer/MSI won't update it, because it has the same version number and MSI then assumes that it doesn't need updating.

The previous file has version number and is dated Jan 28, 2012 whereas the new file also has version but is dated Aug 3, 2012 -and they are different. As far as I know MSI will only use version numbers and not time stamps (like in the old days) when comparing (but do correct me if I'm wrong) and thus it will not update the file. 

Effective result - no update takes place effectively leaving version differences between Microsoft.MetadirectoryServicesEx.dll and Microsoft.MetadirectoryServices.dll. And your XMA/ECMA's break due to this mismatch.
4.0.3606.2 version

4.0.3617.2 version

Now for the remedy. And I state again that this is NOT supported by Microsoft, but helped me get back up and running with the production environment - and we're moving to FIM 2010 R2 shortly, so we're gonna just let the existing system sit for now and not fiddle around with it anymore.
  1. We stopped the FIM Synchronization Service
  2. We "unzipped" the file FIMSyncService_x64_KB2688078.msp and extract the Microsoft.MetadirectoryServicesEx.dll file from one of the CAB files
  3. We copied the extracted file to the 'C:\Program Files\Microsoft Forefront Identity Manager\2010\Synchronization Service\Bin\Assemblies' folder
 And luckily, after restarting the FIM Synchronization Service, we were able to get our ECMA's running again.

Hope this helps anyone in a tight spot...

No comments: