Do my cross-site mailbox moves have to be from a 5.5 server?

Common question I’ve been getting lately is “does the source of a cross-site move with the Exchange 2003 SP1 functionality have to be a 5.5 server?”.

The answer is no. You can move mailboxes cross-site if the mailbox is currently on 5.5, 2000, or 2003 servers… the biggest prerequisite in this area is that the target of the move has to be an Exchange 2003 SP1 server.

In at least one of the cases where I was asked this question, the customer was having problems with the move, and therefore assumed that it was because the source was not a 5.5 server. In that case, they were receiving an event ID 9164 and event ID 1008 during the move:

Event ID: 9164
Description: Failed to open object <mailbox> on server <servername>. Error: There is no such object on the server.

Event ID: 1008:
Description: Unable to move mailbox <mailbox>. There is no such object on the server.

You will get these errors if the move mailbox process is unable to find the 5.5 directory object that is associated with the source mailbox. You’ll probably never have this problem with a source mailbox on a 5.5 server, as the mailbox would be totally broken in that case. Where you will see this is when you have a mailbox on an Exchange 2000/2003 server and the ADC has not replicated the mailbox information from the AD into the 5.5 directory. When the move mailbox process tries to update the object in the 5.5 directory (as it does during cross-site moves, see here), it cannot find this 5.5 directory object and logs the error.

Even if you’re moving cross-site from a pure Exchange 2000/2003 site, there is still (somewhere) an SRS which owns this site, and on that SRS should be a directory representation of each and every Exchange 2000/2003 mailbox in the site. This is how 5.5 gets to know about the Exchange 2000/2003 recipients in that pure site.

The most common causes I’ve seen for these sort of failures are:
1) Not waiting long enough — ADC hasn’t had a chance to replicate yet, but it will in time or if you “replicate now”
2) ADC misconfigured — no matter how long you wait, if the ADC isn’t configured right, you may not see these objects replicate (Suggest you run ADCTools)