Error message when you prepare an Active Directory forest for Exchange Server 2003: "Extending the schema in Active Directory failed"

Applies to: Windows Servers

Symptoms


You run the ForestPrep operation by using the setup.exe /forestprep command in a Microsoft Windows 2000 domain. You do this to prepare a Windows 2000 Active Directory directory service forest for Microsoft Exchange Server 2003. When you do this, you receive the following error message:
Extending the schema in Active Directory failed. Please consult the error log lidif.err in your temp directory.

Error c1037ae6.

Cause


This issue occurs when the ForestPrep operation encounters a link identifier (linkID) in the Active Directory schema that is the same as the linkID that the Exchange Server Setup program tries to import into Active Directory. You may experience this issue when the following conditions are true:
  • A third-party program that extends the Active Directory schema is installed in the domain.
  • That third-party program uses a method to extend the schema that resembles the method that was previously documented on the Microsoft MSDN Web site.

    Note This previous method to extend the schema provided sample code to detect the existing linkIDs in the schema. The code then selected higher values that would not conflict with existing linkIDs.
This previous method of extending the Active Directory schema may conflict with the installation of Exchange Server 2003.

The current method to extend the schema requests a set of available linkIDs from the linkID registration database.

Generally, the following two attributes in the current method to extend the schema conflict with third-party programs:
  • CN=ms-Exch-Home-Sync-Service,<SchemaContainerDN> linkID: 146
  • CN=ms-Exch-Child-Sync-Agreements,<SchemaContainerDN> linkID: 147
The remaining linkIDs that the current method to extend the schema adds are not likely to conflict with schema extensions that are added by third-party programs.

Workaround


To work around this issue, modify the linkIDs in the Adschema03.ldf file or in the Schema0.ldf file to change the conflicting linkID values. To do this, follow these steps:
  1. Copy the contents of the Exchange Server 2003 CD to a location that is on a local hard disk.
  2. From the folder to which you copied the contents of the Exchange Server 2003 CD, locate the Setup\i386\exchange folder.
  3. Open the Schema0.ldf file by using a text editor such as Notepad.


    Note Some versions of Exchange Server 2003 use a file that is named ADschema3.ldf instead of Schema0.ldf. In this situation, open the ADschema3.ldf file by using a text editor such as Notepad.
  4. Locate the dn: CN=ms-Exch-Home-Sync-Service,<SchemaContainerDN> area. To do this, follow these steps:
    1. On the Edit menu in Notepad, click Find.
    2. In the Find what box, type Exch-Home-Sync-Service, and then click Find Next.
  5. Under dn: CN=ms-Exch-Home-Sync-Service,<SchemaContainerDN>, locate the following entry:
    linkID: 146
  6. Replace the value of 146 with the value of 11900.

    Note The Exchange Server Product Group has reserved linkIDs 11900 and 11901 for Exchange Server. These two linkID values do not conflict with existing or future versions of Exchange Server.
  7. Locate the dn: CN=ms-Exch-Child-Sync-Agreements,<SchemaContainerDN> area. To do this, follow these steps:
    1. On the Edit menu in Notepad, click Find.
    2. In the Find what box, type Exch-Child-Sync-Agreements, and then click Find Next.
  8. Under dn: CN=ms-Exch-Child-Sync-Agreements,<SchemaContainerDN>, locate the following entry:
    linkID: 147
  9. Replace the value of 147 with the value of 11901.
  10. On the File menu, click Save to save the changes to the Schema0.ldf file or to the ADschema3.ldf file.
  11. Exit the text editor.
  12. From the folder to which you copied the contents of the Exchange Server 2003 CD, run the Setup\i386\Setup.exe /forestprep command or run the Active Directory Connector (ADC) Setup program to prepare the forest for Exchange Server.

More Information


The Exchange Server Product Group has approved these steps as a supported workaround for the issue that is described in this article. These steps do not damage Active Directory. LinkIDs 11900 and 11901 are reserved for Exchange Server and do not conflict with future Microsoft products.

If you have a scenario in which you require additional linkIDs to install Exchange Server, you can obtain these linkIDs from the MSDN Web site. To do this, visit the following Microsoft Web site:Important After you import objects into the Windows 2000 Active Directory schema, you cannot remove them. Therefore, we recommend that you carefully consider any changes to the Active Directory schema. If you incorrectly extend the Active Directory schema, you may experience problems with Active Directory.

When you experience the issue that is mentioned in this article, information that resembles the following information appears in the Exchange Server Setup Progress.log file:
ScRunLDIFScript (f:\titanium\admin\src\libs\exsetup\exmisc.cxx:1309)
Error code 0XC1037AE6 (31462): Extending the schema in the Active
Directory failed. Please consult the error log LDIF.ERR in your TEMP directory.
[11:22:55] ScImportActiveDSSchemaChanges
(f:\titanium\admin\src\libs\exsetup\exmisc.cxx:1408)
Error code 0XC1037AE6 (31462): Extending the schema in the Active
Directory failed. Please consult the error log LDIF.ERR in your TEMP directory.
[11:22:55] CAtomSchema::ScAddDSObjects
(f:\titanium\admin\src\udog\exsetdata\components\root\a_schema.cxx:254)
Error code 0XC1037AE6 (31462): Extending the schema in the Active
Directory failed. Please consult the error log LDIF.ERR in your TEMP directory.
[11:22:55] CAtomSchema::ScAdd
(f:\titanium\admin\src\udog\exsetdata\components\root\a_schema.cxx:150)
Error code 0XC1037AE6 (31462): Extending the schema in the Active
Directory failed. Please consult the error log LDIF.ERR in your TEMP directory.
[11:22:55] mode = 'ForestPrep' (61965) CBaseAtom::ScSetup
(f:\titanium\admin\src\udog\setupbase\basecomp\baseatom.cxx:842)
Error code 0XC1037AE6 (31462): Extending the schema in the Active
Directory failed. Please consult the error log LDIF.ERR in your TEMP directory.
[11:23:01] Setup encountered a fatal error during Microsoft Exchange
Forest Preparation of ForestPrep component task. -- ID:62237 --
CBaseComponent::ScSetup
(f:\titanium\admin\src\udog\exsetdata\components\forprep\compforprep.cxx:513)
Error code 0XC1037AE6 (31462): Extending the schema in the Active
Directory failed. Please consult the error log LDIF.ERR in your TEMP directory.
[11:23:01] CCompForestPrep::ScSetup
(f:\titanium\admin\src\udog\exsetdata\components\forprep\compforprep.cxx:613)
Error code 0XC1037AE6 (31462): Extending the schema in the Active
Directory failed. Please consult the error log LDIF.ERR in your TEMP directory.
[11:23:01] CComExchSetupComponent::Install
(f:\titanium\admin\src\udog\bo\comboifaces.cxx:829)
Error code 0XC1037AE6 (31462): Extending the schema in the Active
Directory failed. Please consult the error log LDIF.ERR in your TEMP directory.
In this file, the following entry indicates that you experience the issue that is described in this article:
Setup encountered a fatal error during Microsoft Exchange 
Forest Preparation of ForestPrep component task. -- ID:62237 --
CBaseComponent::ScSetup
Additionally, information that resembles the following information appears in the Ldif.err file:
Entry DN: 
CN=ms-Exch-Home-Sync-Service,CN=Schema,CN=Configuration,DC=vpgroup,DC=local
changetype: add
Attribute 0) adminDescription:ms-Exch-Home-Sync-Service
Attribute 1) adminDisplayName:ms-Exch-Home-Sync-Service
Attribute 2) attributeID:1.2.840.113556.1.4.7000.102.36
Attribute 3) attributeSyntax:2.5.5.1
Attribute 4) isMemberOfPartialAttributeSet:FALSE
Attribute 5) isSingleValued:TRUE
Attribute 6) lDAPDisplayName:msExchHomeSyncService
Attribute 7) name:ms-Exch-Home-Sync-Service
Attribute 8) oMSyntax:127
Attribute 9) oMObjectClass: UNPRINTABLE BINARY(9)
Attribute 10)
objectCategory:CN=Attribute-Schema,CN=Schema,CN=Configuration,DC=vpgroup,DC=local
Attribute 11) objectClass:attributeSchema
Attribute 12) linkID:146
Attribute 13) schemaIdGuid: UNPRINTABLE BINARY(16)
Attribute 14) searchFlags:0

Add error on line 2273: Unwilling To Perform The server side error is "Schema
update failed: An attribute with the same link identifier already exists." An error
has occurred in the program