"Error: We seem to be in an infinite recursive loop" with Adamsync tool

Applies to: Windows Server 2012 R2 EssentialsWindows Server 2012 R2 DatacenterWindows Server 2012 R2 Standard More

Symptoms


You use the Active Directory Lightweight Directory Service (LDS, formerly ADAM) Synchronizer (Adamsync) tool to synchronize data from an Active Directory Domain to a configuration set of an LDS instance. After you do this, synchronization stops. Additionally, an error message that resembles the following is logged:

Note The error message is recorded in the log file that you specified when you ran the Adamsync tool.

This problem occurs if you specified a grandchild organizational unit (OU) as the base distinguished name in the XML configuration file.

Cause


This behavior is caused by a limitation in the Adamsync tool.

Workaround


To work around this issue, use one of the following methods:

  • Create the grandchild OU in LDS before you run the Adamsync tool. You can then specify the grandchild OU as the base distinguished name in the XML configuration file.
  • Specify the child OU as the base distinguished name in the XML configuration file instead of specifying the grandchild OU.

For example, use the following syntax to specify the base distinguished name in the XML configuration file:

<base-dn>OU=Child,DC= DomainComponentName ,……..</base-dn>


More information


The following steps illustrate the error scenario:

  1. Configure the Adamsync tool to synchronize data from an Active Directory forest to a configuration set of an ADAM instance.

  2. Specify a grandchild OU as the base distinguished name for the query in the XML configuration file.

    For example, include the following code in the XML configuration file.

    <source-ad-name>03child.MyDomainController.net</source-ad-name><source-ad-partition>dc=03child,dc=MyDomainController,dc=net</source-ad-partition><source-ad-account></source-ad-account><account-domain></account-domain><target-dn> DistinguishedNameOfADAMpartition </target-dn><query>    <base-dn>OU=Grandchild,OU=Child,DC=03child,DC=MyDomainController,DC=net</base-dn>
  3. At a command prompt, type the following command, and then press Enter:

    adamsync /fs ADAMserverName : PortNo DistinguishedNameOfADAMpartition / LogSynclog .txt

    Note The DistinguishedNameOfADAMpartition in this example is app2.

  4. Open the log file that you specified in step 3. The log file contains the following entries:

For more information about the Adamsync tool, see Synchronize with Active Directory Domain Services.