Thursday 11 November 2010

FIM Service Stops after Import and User Profile Synch Connection Disappears

I opened a support call  with Microsoft recently where miiserver.exe would fault after an incremental import every night which would cause the FIM services to stop. This would result in the User Profile Synch connection disappearing. Restarting the FIM services would fix the problem but obviously this wasn't ideal.

A description of the issue is as follows:

At 1am every night the Incremental User Profile Import runs. Following this the FIM Service enters a "Stopped" state. Inspection of the System Log indicates:

EVENT ID: 1000

Faulting application name: miiserver.exe, version: 4.0.2450.11, time stamp: 0x4c3e8067 Faulting module name: KERNELBASE.dll, version: 6.1.7600.16385, time stamp: 0x4a5bdfe0 Exception code: 0xe053534f Fault offset: 0x000000000000aa7d Faulting process id: 0x%9 Faulting application start time: 0x%10 Faulting application path: %11 Faulting module path: %12 Report Id: %13

The fix as suggested by Microsoft was as follows:
  
“Please add the following line (highlighted) to the miisserver.exe.config (C:\Program Files\Microsoft Office Servers\14.0\Synchronization Service\Bin) and see if it helps….restart the FIM services (through services.msc) and re-run incremental sync." 

 <?xml version="1.0" encoding="UTF-16"?>
<configuration>
        <configSections>
                                <section name="resourceManagementClient"

type="Microsoft.ResourceManagement.WebServices.Client.ResourceManagementClientSection, Microsoft.ResourceManagement"/>
        </configSections>
                <startup>
                                <requiredRuntime version="v2.0.50727"></requiredRuntime>
                                <supportedRuntime version="v2.0.50727"></supportedRuntime>
                </startup>
  <runtime>
    <disableStackOverflowProbing enabled="true"/>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.MetadirectoryServicesEx" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="3.3.0.0" newVersion="4.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

 An explanation for the line that resolves the problem can be found here at http://msdn.microsoft.com/en-us/library/ms149581.aspx and is due to the stack size.