Pages

Exchange Server 2013 - Troubleshooting a Public Folder Migration to 2013

Migrating Public Folders from 2007/2010 to 2013 requires quite a different process than any previous Public Folder migrations. With the architectural changes made in 2013 this should be no surprise as we now need to replicate data from a database to a mailbox. As with all migrations there are sometimes things that are out of our control. Let’s walk through a real world situation where the migration of Public Folders did not go as well as planned.

During a production Public Folder migration, a client of mine ran into multiple issues with the migration from Exchange 2010 to 2013 Public Folder. Since the entire process of Public Folder migration is done with PowerShell, how would you know if the migration is held up or crashed or had issues? PowerShell.

OK. So now back to the client and their issues. The first five steps of the migration went well (Microsoft Public Folder migration document). Once the migration was started, we decided to monitor the progress every 5-15 minutes to see if there were any issues to be resolved. To check the migration, we used a condensed PowerShell one-liner to get the information we needed:
  • Get-PublicFolderMigrationRequest I Get-PublicFolderMigrationRequestStatistics -IncludeReport I ft name,status*,*transferred*,percentcomplete -auto
    PFMigrationTS-05-CL

After 15 minutes, when were checking the status of the migration we noticed that the migration status showed as failed. To get information on what had failed, we modify the PowerShell script to use ‘fl’ (format list) instead of ‘ft’ (format table).
The main reason we do this is that if you don’t, the amount of detail revealed by ft is too small:

PublicFoldersMigration04
So now we run the command with fl:
  • Get-PublicFolderMigrationRequest I Get-PublicFolderMigrationRequestStatistics -IncludeReport I fl
    PFMigration-Good-13s
    and get these results:

    PFMigrationTS-06


As you can see, we have issues with the illegal characters Alias of some Public Folders. After investigating the ones with issues, it appears that the folders in question have spaces either leading, trailing or otherwise. How do we get rid of the space? First, lets verify the groups have these characters:
  • $pfs= Get-publicfolder “\” -recurse | where {$_.MailEnabled -eq “True”} | Get-MailPublicFolder | where {$_.alias -like ‘* *’ -or $_.alias -like ‘*,*’}
  • Running it will result in a screen similar to this:

    PublicFoldersMigration07

After the issue is confirmed, run this command to remove the spaces from the Alias.
  • foreach($pf in $pfs) {set-mailpublicfolder $pf.Identity -Alias:($pf.alias -replace ‘\s|\,’,”)}
    PublicFoldersMigration08



Once the offending groups were corrected, we resumed the migration:
  • get-publicfoldermigrationrequest | resume-publicfoldermigrationrequest
    PFMigrationTS-04

Once the migration resumed, we carefully monitored the migration to make sure no other errors occurred. After about an hour or so, the migration stopped again.
  • We ran the one-liner to check for more detail on the error:
    PublicFoldersMigration11
  • more on the error:
    PublicFoldersMigration12


As you can see, we hit a bad items limit for the Public Folder migration. Let’s increase the limit and resume the migration:

PublicFoldersMigration13
We get an informational warning about raising the limit is not always recommended due to data loss.

If we look at the complete log for a migration, up to the autosuspend part, there is quite a bit of information about what is going on:

PublicFoldersMigration16-f

In the red circled areas you can see some of the errors that could occur in a typical production migration of Public Folders. From fatal errors (in our case spaces in PF aliases, to corrupted items, even Transient errors which self correct (note the retry (1/60)) as well as the fatal error about too many bad items. All of this information is revealed with the ‘ -IncludeReport’ switch with the Get-PublicFolderMigrationRequestStatistics command we use to monitor the migration.

Well I hope this article will help you troubleshoot any errors you get with migration of your Public Folders to Exchange 2013.

Related Resources
Get-PublicFolderMigrationRequestStatistics
Get-PublicFolderMigrationRequest

2 comments:

  1. This comment has been removed by the author.

    ReplyDelete
  2. Thanks, when I migrate exchange public folder to Exchange 2010, then I have a issues regarding to public folder and then I have followed these steps in the following blog and I tested the automated tool named Migrator for Exchange tool ( https://softcart.wordpress.com/exchange-server-migration/ ) which helps to solve this issue with migrating my public folders to Exchange 2013. This tool allows to migrate any exchange server to Office 365 and public folder , intra- forest and cross forest exchange.

    ReplyDelete