Cleanup from issues experienced with Exchange Server 2019 CU15 PrepareSchema and PrepareAD

Brad Hunt 30 Reputation points
2025-07-09T17:02:01.5133333+00:00

Over this last weekend, I decided to run the PrepareSchema and PrepareAD steps for CU15 since, up until now, it has been a fairly quick and straightforward process. Both seemed to complete without issue, but then I noticed that repadmin was reporting schema mismatch errors domain-wide. The problem turned out to be that some of the schema attributes had duplicate values... I'll explain. In most cases, the attribute name was "auxiliaryClass", and the value was showing as {msExchBaseClass, msExchBaseClass} when it should have simply been {msExchBaseClass}. Changing the values on 67 attributes corrected the schema mismatches. In checking each domain controller just to be sure, it turns out that one domain controller still has the duplicated values. Being a classSchema object, it can only be edited from the schema master, and the issue is on a domain controller at a remote site. Is anyone aware of a way to make these edits on a non-schema master DC? The DC seems fully functional, but I expect that correcting the duplication issue now will prevent issues down the road. Thanks for any assistance!

Exchange | Exchange Server | Other
0 comments No comments
{count} vote

Accepted answer
  1. Jade-T 3,520 Reputation points Microsoft External Staff Moderator
    2025-07-10T04:52:29.86+00:00

    Hi @Brad Hunt

    We've received your report regarding the schema mismatch issue after running the PrepareSchema and PrepareAD steps for CU15. We understand that some schema attributes, specifically auxiliaryClass are showing duplicate values, and while you've resolved this on most Domain Controllers, one remote DC still has these duplicated values. We apologize for any inconvenience this has caused. 

    As a forum moderator, I'm here to offer guidance and point you toward reliable resources. While I can't directly access or perform technical operations on your system, I can provide a clear explanation of the issue and outline the standard steps for resolution. 

    The root of this problem lies in how Active Directory Schema objects, such as classSchema (which includes the auxiliaryClass attribute), are managed. Any modifications to these critical schema objects can only be performed directly on the Domain Controller holding the Schema Master FSMO (Flexible Single Master Operation) role. This is a fundamental design principle of Active Directory, ensuring that the schema remains consistent and authoritative across your entire forest. Attempting to directly edit these attributes on a Domain Controller that isn't the Schema Master simply won't work. 

    Your situation strongly suggests that the Active Directory replication process between your Schema Master and the problematic remote Domain Controller hasn't fully completed or is encountering an issue. The primary goal here is to ensure that this remote DC successfully receives the corrected schema information from your Schema Master. 

    Resolving this type of issue typically involves ensuring proper Active Directory replication. These actions require administrative privileges and should be performed by an experienced IT professional: 

    1. Identify the Schema Master

    Determine which Domain Controller currently holds the Schema Master FSMO role in your environment. 

    Microsoft Docs Reference: Flexible Single Master Operations roles in Windows Server 

    2. Check Replication Health

    Use tools like repadmin /showrepl to verify the replication status between your Schema Master and the remote Domain Controller. This will help identify any replication errors that might be preventing the schema from synchronizing correctly. 

    Microsoft Docs Reference: Diagnose AD Replication Failures 

    3. Force Schema Replication

    If no severe replication errors are found, your technical team may attempt to force replication of the Schema partition using repadmin /syncall or repadmin /replicate from the Schema Master to the affected Domain Controller. 

    Microsoft Docs Reference: Troubleshooting Active Directory Replication Problems 

    4. Verify the Schema

    After attempting replication, it's crucial to re-check the auxiliaryClass attribute on the remote Domain Controller using tools like repadmin /showattr to confirm that the duplicate values have been successfully corrected. 

    For detailed assistance and direct intervention on your system, I strongly recommend reaching out to your internal IT team or a professional technical support provider specializing in Active Directory and Exchange Server. They have the necessary expertise and tools to accurately diagnose and safely implement the corrective actions. 

    For your complete understanding and to aid any technical team you engage, here's a curated list of relevant official Microsoft Learn documentation: 

    I hope this detailed explanation and the provided resources will help you navigate this issue effectively. Please let me know if you have any further questions as you proceed. 


    If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".   

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    1 person found this answer helpful.

2 additional answers

Sort by: Most helpful
  1. Brad Hunt 30 Reputation points
    2025-07-11T21:43:18.76+00:00

    Thank you for the reply! After I had remove the duplicated values from the schema master and corrected the schema mismatch errors, syncall completed with no issues. It basically ends with "SyncAll terminated with no errors" which is what we want. The only reason I know that the duplicated values are still there on the one remote domain controller is because they show up in ADSI Edit as well as via a PowerShell query I wrote. I'm thinking that active directory may not recognize the difference between "{msExchBaseClass, msExchBaseClass}" and "{msExchBaseClass}". However, the duplicated values definitely caused replication issues when they were on the schema master. Is there a way to basically do a full copy of the AD database to our problem domain controller to fix this issue? I realize I could probably demote the domain controller and then promote it, but I'm hoping for a less drastic approach if possible.

    0 comments No comments

  2. Brad Hunt 30 Reputation points
    2025-07-17T12:14:20.33+00:00

    I was able to get this last DC fixed by basically following the same approach as I did for solving the widespread schema mismatches. In our topology, one DC was in between the schema master and the DC showing the duplicate values. For most of the 67 values duplicated after the PrepareAD, I had to one at a time use ADSI Edit on the schema master to remove the value so that it showed "<not set>", then use repadmin /syncall to make sure the change replicated far and wide, then I reentered the value and ran repadmin /syncall again. After this, the value on the problem DC was no longer duplicated. At this point, the 67 values are matching across all domain controllers, no duplication of values is present, and replication continues to complete without error. While it was a mind-numbing process to reenter the values, I definitely preferred it to demoting and re-promoting the domain controller.


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.