Verify Exchange Server Schema Version

Posted by in Exchange 2003, Exchange 2007, Exchange 2010, Exchange 2013

UPDATED Feb 25, 2014 to include Exchange 2013 Service Pack 1 information.

Since Microsoft has a dedicated TechNet article on this topic, I will no longer update this post. You can find updated information here: http://technet.microsoft.com/en-us/library/bb125224(v=exchg.150).aspx

When you run Exchange Setup to prepare schema, usually the very next question is, how do I verify schema was updated successfully? Verifying only the values of attributes as mentioned below is not a good verification of Exchange setup completion. This article is intended to only provide reference to attributes and their values.

Let’s start back at Exchange 2003 SP2.

One of the last actions setup /forestprep in Exchange 2003 is to set objectVersion attribute on Exchange organization container to a value of 6903. You can verify this using ADSIEdit and navigating to Configuration NC, Exchange organization object under services\Microsoft Exchange node.

On the other hand, when setup /domainprep is run, it sets the objectVersion attribute on Microsoft Exchange System Objects container to a value of 6936. You can verify this using ADSIEdit and navigating to Domain NC, Microsoft Exchange System Objects container.

In Exchange 2007, after successful run of Setup /PrepareSchema you will find that the attributes mentioned above are not changed! You need to verify the value of rangeUpper attribute of ms-Exch-Schema-Version-Pt object in Schema NC. The value should be 10637.

It is only when you run Setup /PrepareAD the objectVersion attribute of Organization container in Configuration NC is updated to a value of 10666. You will also find that objectVersion attribute on Microsoft Exchange System Objects container in Domain NC is set to a value of 10628.

You will also notice that Setup /PrepareDomain does not have any effect on these attribute values.

Here is the table of all versions I have tested and values of schema attributes I have observed in my setup. The list is in reverse order starting latest version first for readability.

Exchange Version RangeUpper value of ms-Exch-Schema-Version-Pt object (Schema NC) ObjectVersion of Org Container (Config NC) ObjectVersion of Microsoft Exchange System Objects (Domain NC)
Exchange 2013 SP1 (CU4) 15292 15844 13236
Exchange 2013 CU3 15283 15763 13236
Exchange 2013 CU2 15281 15688 13236
Exchange 2013 CU1 15254 15614 13236
Exchange 2013 RTM 15137 15449 13236
Exchange 2010 SP3 14734 14322 13040
Exchange 2010 SP2 14732 14247 13040
Exchange 2010 SP1 14726 13214 13040
Exchange 2010 RTM 14622 12640 12639
Exchange 2007 SP3 14625 11222 11221
Exchange 2007 SP2 14622 11222 11221
Exchange 2007 SP1 11116 11221 11221
Exchange 2007 RTM 10637 10666 10628
Exchange 2003 SP2 6870 6903 6936

I have not tested anything before Exchange 2003 SP2, however, Exchange Schema Versions wiki page does keep tab on all versions as well and is a great reference for more details than just version numbers.

Cheers!