MSExchangeGuru.com

Learn Exchange the Guru way !!!

 

Public Folders Migration from Exchange 2007/2010 to Exchange 2013

Public Folders has been discussed before and after every new Exchange server release but there are many Microsoft customers who are using it that Microsoft is not preferring to remove it completely. Even today with the great functionality of sharepoint, Microsoft decided to keep PF in the Exchange so that it can give an option to use PF or Sharepoint.

I would highly recommend our high Public Folders users to start using Sharepoint but if you have less Public Folders Data then we can still migrate Public Folder Database to Public Folder Mailboxes.

By changing the Design from Database to Mailbox, Public Folders has become highly available with DAG. So if your mailbox database is up and running in DAG then Public Folders are also available.

Public Folders Limits can be reviewed here.

 

 

 

Assumptions:

-Exchange 2010 is Exchange 2010 SP3 or later

-Exchange 2007 is Exchange 2007 SP3 RU10 or later

-Login id has Organization Management and Recipient Management Permissions

-All the mailboxes have been moved to Exchange 2013

-Ensure we announce downtime or do this over the weekend

-Perform a backup of your public folder databases

-Removed space and \ from the alias of 2007/2010 Public Folders.

 

Public Folder Migration Steps:

1. Snapshot of the current Public Folders: In the following steps we will take the snapshot of the current Public Folders which will be compare post migration.

       -Run the following command to take a snapshot of the original source folder structure.

       Get-PublicFolder -Recurse | Export-CSV C:\PFMigration\Ex2010_PFStructure.csv

       -Run the following command to take a snapshot of the public folder statistics such as item count, size, and owner.

       Get-PublicFolder -Recurse | Get-PublicFolderStatistics | Export-CSV C:\PFMigration\Ex2010_PFStatistics.csv

       -Run the following command to take a snapshot of the permissions.

       Get-PublicFolder -GetChildren | Get-PublicFolderClientPermission | Select-Object Identity,User -ExpandProperty AccessRights | Export-CSV C:\PFMigration\Ex2010_PFPerms.csv

       Save the information from the above commands for comparison at the end of the migration.

 

2. Preparation on Legacy Exchange server (2010/2007): We need to do the following check before preparing public folders migration.

       -Validate Exchange 2010/2007 Public Folder database is mounted

       -Validate no record of previous successful migration is present

       -Use the below cmdlet to check if there was a previous successful migration completed

       Get-OrganizationConfig | fl PublicFoldersLockedforMigration, PublicFolderMigrationComplete


       -If you find any True, then use the below cmdlet, this will take some time to become effective:

       Set-OrganizationConfig -PublicFoldersLockedforMigration:$false -PublicFolderMigrationComplete:$false 
3. Preparation on Exchange 2013 server: We need to check the following on the Exchange 2013 before starting the migration.

       -Validate no migration currently in progress by running following cmdlet

         Get-PublicFolderMigrationRequest

       -Validate no existing PFs or PF mailboxes by running following cmdlet

         Get-publicfolderdatabase

         And

         Get-publicfolder

         Or

         Get-Mailbox -PublicFolder

         You should see the below output:

         

         

       -Run the below cmdlets to remove any previous Public Folders:

         Get-PublicFolderMigrationRequest | Remove-PublicFolderMigrationRequest -Confirm:$false
         Get-MailPublicFolder | where $_.EntryId -ne $null | Disable-MailPublicFolder -Confirm:$false 
         Get-PublicFolder -GetChildren \ | Remove-PublicFolder -Recurse -Confirm:$false 
         Get-Mailbox -PublicFolder |Remove-Mailbox -PublicFolder -Confirm:$false

 

4. Export public folder hierarchy from source into CSV file: On Exchange 2010/2007 run the following script which will generate a csv file:

Important: In Exchange 2007 you might need to remove “ResultSize:unlimited” on line number 91 of the script “Export-PublicFolderstatiscis.ps1”. Don’t change anything unless you face any issue.

         .\Export-PublicFolderStatistics.ps1 \\servername\path\filename.csv


       Example file output

         .\PublicFolderToMailboxMapGenerator.ps1 MailboxSize ImportFilePAth ExportFilePath


       ImportFilepath is the file name which was created in previous step.

       Output file screen

       

5. Create public folder mailboxes in Exchange 2013: We will run the below cmdlet to create public folders mailboxes in hold for migration mode.

Important: The name of the public folder mailboxes that you create must match the name of the TargetMailbox in the mapping file. You can edit the TargetMailbox names in the mapping file to match your organization’s naming conventions.

         New-Mailbox -PublicFolder MailboxName -HoldForMigration:$true –Database “2013DB”


       -Continue creating the new mailboxes as per the output file. In my case it was only one.

 

6. Migration Request creation: In this step we will rung the migration request cmdlet

        "New-PublicFolderMigrationRequest -SourceDatabase (Get-PublicFolderDatabase -Server <Source server name>) -CSVData (Get-Content <Folder to mailbox map path>         -Encoding Byte)"
     Example: New-PublicFolderMigrationRequest -SourceDatabase (Get-PublicFolderDatabase -Server Exch2010) -CSVData (Get-Content C:\temp\Mapgen.csv -Encoding Byte)


       -Move will begin as an online move and reach auto suspended state

       -Run the following cmdlet to verify the migration status.

         Get-PublicFolderMigrationRequest | Get-PublicFolderMigrationRequestStatistics -IncludeReport | fl

       -Below is sample screen – Normally you get 2-3GB per hour migration output.


       When the status reaches Autosuspended, we can move to next step

 

7. Lock source (Exchange 2010/2007) for final migration:

       -Once Auto Suspend state is reached, set the bit on the org object that you are making the switch

       -Downtime will be required depends on how much new content was generated since the migration reached the AutoSuspended state.

       -The cmdlet will log off the users from the public folders and lock the folders while the migration completes its final synchronization. Users won’t be able to access public folders during this process.

       -It is recommended to run the following cmdlet on Exchange 2010/2007 but this does not matter in the same org as this is org level configuration.

        Set-OrganizationConfig –PublicFoldersLockedForMigration:$true

 

 -If multiple source PF databases, wait Replication Interval+1 hour after locking source so they can replicate. Alternatively you can restart the Microsoft Exchange Information Store service to bypass the    waiting time.

8. Complete the suspended migration by running below 2 cmdlet:

       -Set flag on migration request that finalization has been triggered

        Set-PublicFolderMigrationRequest –Identity \PublicFolderMigration -PreventCompletion:$false

        

       -Resume migration request

        Resume-PublicFolderMigrationRequest –Identity \PublicFolderMigration

        

       -Migration will reach completed state

 

9. Validation

       -Check that source public folders have been moved to Exchange 2013

       -Check that hierarchy matches the source setup


        

 

10. Removing PF Database in Exchange 2010/2007

       Once you are satisfied, you can go ahead and delete the Public Folder Database from Exchange 2010/2007 then remove the database and log files from folder directory 


 

Public Folder Migration ends here.

 

Rollback Steps:

If you run into issues with the migration and need to reactivate your Exchange 2010 public folders, perform the following steps:

Important: After the migration is complete, any changes you made to your Exchange 2013 public folders won’t be reflected in the Exchange 2010/2007. As a result, you may lose public folder data if you roll back the migration.

       1. To unlock legacy Exchange public folders, run the following command on the legacy Exchange server.

        Set-OrganizationConfig -PublicFoldersLockedForMigration:$False

       2. To set the PublicFolderMigrationComplete flag to $false, run the following command on the Exchange 2010 SP3 server:

       Set-OrganizationConfig -PublicFolderMigrationComplete:$False

       3. If Public Folders will be present in exchange 2013 then users will not go to exchange 2010/2007. To remove the public folders, run the below cmdlets

        Get-PublicFolderMigrationRequest | Remove-PublicFolderMigrationRequest -Confirm:$false
        Get-MailPublicFolder | Disable-MailPublicFolder -Confirm:$false 
        Get-PublicFolder -GetChildren \ | Remove-PublicFolder -Recurse -Confirm:$false 
        Get-Mailbox -PublicFolder |Remove-Mailbox -PublicFolder -Confirm:$false


Best of Luck, feel free to contact us in case of any issue

Prabhat Nigam | MVP Exchange Server

Team@ MSExchangeGuru

Keywords: Exchange 2010 public folder migration, Exchange 2013 public folders, how to migrate public folders to Exchange 2013, exchange 2013, exchange 2013 PF migration, how to migrate public folders from Exchange 2007 to exchange 2013

112 Responses to “Public Folders Migration from Exchange 2007/2010 to Exchange 2013”

  1. Herbert Says:

    Beautiful! Thanks so much! :)

  2. AMIT Says:

    Excellent documentation

  3. Sathish Says:

    Excellent Article.

  4. gagan Says:

    Thanks for the excellent article, after reading this I have successfully Migrate Public folders from exchange 2010 to 2013. Except not able to delete Public folder database from exchange 2010 EMC, getting error “The public folder database “PFDB01” contains folder replicas. Before deleting the public folder database, remove the folders or move the replicas to another public folder database” Also can you guide how I can delete mailbox database of exchange 2010?Can you guide me the next stop how I can decommission exchange 2010?

    Thanks again

  5. Wizkid Says:

    Thank you for Compliments :)

    @Gagan – I would suggest you to dismount the Public Folder DB and Enjoy 2013 PF for few Days. Once you
    are satisfied you can follow the technet link – http://technet.microsoft.com/en-us/library/dd876883(EXCHG.140).aspx

  6. Massimo Says:

    Great article!
    One question: does step n°4 require you to copy Scripts folder from Exchange2013 to Exchange 2007 server? AFAIK the Export-PubliFolderStatistics.ps1 does not exist in Exchange2007 folder. Is that correct?

  7. Wizkid Says:

    Yes Massimo. Please copy from 2013

  8. Kyle Says:

    Thanks for the steps, however I ran into an issue. After the move was autosuspended, and then I made the PreventCompletion changes and resumed the move, it would once again suspend saying that the original database was locked. I had to go back and unlock the original database and resume the move for it to complete successfully. Any ideas on why?

  9. Wizkid Says:

    @Kyle – I guess it will be replication delay.

  10. Kyle Says:

    @Wizkid – It was a single domain controller with a single Exchange 2010 and single Exchange 2013 test setup in a vmware lab. Replication should not be an issue. Even still, I let it sit for 3 days and it was still an issue. What would there be to replicate anyway? It was correctly reporting that the database was locked, as we did that in step 7 above. I essentially had to undo that step to complete the migration.

  11. Wizkid Says:

    @Kyle
    Every configuration stays in AD so replication is important, You had not mentioned that you have 1 DC.
    Step 7 is required and we don’t change to false until role back. I will be more than happy to help your setup fixed. Do let me know if you can reproduce the same issue.

    prabhat@msexchangeguru.com

  12. NeWay Technologies – Weekly Newsletter #39 – April 18, 2013NeWay | NeWay Says:

    [...] Public Folders Migration from Exchange 2007/2010 to Exchange 2013 – 18-Apr-2013 [...]

  13. Anna Says:

    Hello, I’m interested in Public Folder migration cross-forest. I wasn’t able to complete it. Always stuck at New-PublicFolderMirationRequest with its remote parameters. Some of them are marked as “for Microsoft internal use only” as OutlookAnywhereHostName or AuthenticationMethod. And some of them aren’t even recognized, as RemoteCredential or RemoteMailboxServerLegacyDN. Although they are in help.
    I tryed many ways, combine sessions, experimenting with similar comands, etc. MS scripts for creating AD objects worked fine, but it’s not enough.
    Always stuck at required parameter SourceDatabase for New-PublicFolderMirationRequest. It can’t connect remotely without proper setting.
    I’m really unhappy, but I don’t give up… yet.

  14. Wizkid Says:

    @Anna- I have not tested cross forest migration yet but it should not be much of worry. If you can share the error then I might be able to suggest you any solution.

    I will test cross forest migration shortly and share.

  15. Mark Says:

    Nice Post. So here is a good one. I wish to create a Mailbox Database in Exchange 2010 but WITHOUT Public folders. I cannot see any way to get round the setting that a Mailbox database must be associated with public folders.

  16. Anna Says:

    Thanks for reply. It’s not just about error, ut’s about missing parameters in New-PublicFolderMirationRequest. The synatx is:

    New-PublicFolderMigrationRequest -OutlookAnywhereHostName -RemoteCredential -RemoteMailboxLegacyDN -RemoteMailboxServerLegacyDN [-AuthenticationMethod ] [-Organization ] …etc etc etc….

    but first parameter -OutlookAnywhereHostName is for internal microsoft use only.

    [PS] C:\Windows\system32>New-PublicFolderMigrationRequest -OutlookAnywhereHostName
    A parameter cannot be found that matches parameter name ‘OutlookAnywhereHostName’.
    + CategoryInfo : InvalidArgument: (:) [New-PublicFolderMigrationRequest], ParameterBi ndingException
    + FullyQualifiedErrorId : NamedParameterNotFound,New-PublicFolderMigrationRequest
    + PSComputerName : exchange.domain.com

    and others are the same, just for MS only or just not recognized. For example:

    [PS] C:\Windows\system32>$s = Get-Credential
    cmdlet Get-Credential at command pipeline position 1
    Supply values for the following parameters:
    Credential
    [PS] C:\Windows\system32>New-PublicFolderMigrationRequest -RemoteCredential $s
    A parameter cannot be found that matches parameter name ‘RemoteCredential’.
    + CategoryInfo : InvalidArgument: (:) [New-PublicFolderMigrationRequest], ParameterBi ndingException
    + FullyQualifiedErrorId : NamedParameterNotFound,New-PublicFolderMigrationRequest
    + PSComputerName : exchange.domain.com

    But I send a note to MS and it is a real problem not just some complicated solving method, thay answered me today and will make me a solution.

  17. Wizkid Says:

    @Anna
    I will explain more once I will test and I might publish another article for it. If MS is answering your concerns then let us wait for their reply.
    These are my thought about the cmdlets:
    1. New-PublicFolderMigrationRequest -OutlookAnywhereHostName
    You have missed FQDN of OutlookAnywhere, as an example it should be New-PublicFolderMigrationRequest -OutlookAnywhereHostName mail.msexchangeguru.com
    2. New-PublicFolderMigrationRequest -RemoteCredential $s
    In this cmdlet you need to add RemoteMailboxServerLegacyDN, Below is the extract from technet.
    “You must use this parameter in conjunction with the RemoteMailboxServerLegacyDN parameter.”

    Reference used: http://technet.microsoft.com/en-us/library/jj218636(v=exchg.150).aspx

  18. Anna Says:

    If you run help new-publicfoldermigrationrequest -detailed , you can see there are parametrers details like this:

    -OutlookAnywhereHostName
    This parameter is reserved for internal Microsoft use.

    You cannot simply use it, command new-publicfoldermigrationrequest will just answer you “cannot found”, as I posted before.

    And yes, for remotecredentials..

    -RemoteMailboxServerLegacyDN
    The RemoteMailboxServerLegacyDN parameter specifies the server legacy distinguished name (DN) of the back-end server. To find the LegacyExchangeServerDN property, run the following command: Get-ExchangeServer | Format-List LegacyExchangeServerDN.

    This command surprisely doesn’t work. It just jump to few more rows.

    [PS] C:\>Get-ExchangeServer server | Format-List LegacyExchangeServerDN

    [PS] C:\>

    When it doesn’t return any value it’s useless.

  19. Steve Says:

    Just migrated from 2007 to 2013. Have had lots of issues, pub folders being one of them. Just used these instructions. I now have successfully migrated the folders!
    Notes:
    -Had to set -baditemcount on the migration request, because it initially failed.
    -Had the migration hang due to mailbox being locked. Had to rerun the command…
    Set-PublicFolderMigrationRequest –Identity \PublicFolderMigration -PreventCompletion:$false

    Aside from these issues (not including all my typos during the process) this process worked great. Thanks!!!

  20. MikeyRod Says:

    Hi Guys,

    Just so you know, for step 4, Export public folder hierarchy from source into CSV file, If your legacy server is 2007, I could NOT get this to work until I edited the export-publicfolderstatistics.ps1 script and removed the “ResultSize:unlimited” item on line 91 of the script. On line 91 of the script, you can see that it runs “get-publicfolder statistics servername -resultsize:unlimited”, which for me, was causing an error, thus not working.

    If you right click and edit the script, you can modify and save the script and try again. I hope this tidbit helps others.

  21. Wizkid Says:

    @Mikey – Thank you! This has been updated.

  22. MikeyRod Says:

    You’re welcome, WizKid….and shame on me for not thanking YOU in the first place. Great article and thanks for the help!

  23. Wizkid Says:

    Its okay Mikey. It was great to know my publication was any help for you.

  24. Exchange 2010/2007 to 2013 Migration and Co-existence Guide « MSExchangeGuru.com Says:

    [...] http://msexchangeguru.com/2013/04/18/exchange2013-public-folders/ [...]

  25. Rony Says:

    Thank you for this great article.
    I am facing an issue at the end of the process: when i try to remove the public folder database from Exchange 2007 i am getting this error “Object is read only because it was created by a future version of Exchange: 0.10 (14.0.100.0). Current supported version is 0.1 (8.0.535.0).” since remove-publicfolderdatabase cmdlet does not exist in 2013 i am wondering how i can do that …
    Thx

  26. Prabhat Nigam Says:

    @Mike – Sorry, I missed to approve and reply you. Here is your answer: We always create mailbox database without linking Public Folders. This is a configuration option in the properties of the mailbox database.
    Basically many organizations don’t use Public folders and they don’t create Public folder Database.

  27. Prabhat Nigam Says:

    @Rony – Check the below link for the Exchange 2007 PF removal – I would suggest these links before trying Adsiedit.msc

    http://technet.microsoft.com/en-us/library/aa998329(v=EXCHG.80).aspx
    http://forums.msexchange.org/m_1800521706/mpage_1/key_/tm.htm#1800521706

    Try removing from Adsiedit.msc but be careful. Take the systemstate backup before deleting.

    1. Launch ADSIEdit and connect to the “Configuration” container.

    2. Navigate to “Services –> Microsoft Exchange –> Org Name –> Administrative Groups –> Group Name –> Servers –> 2007servername –> Information Store –> Storage Group”

    3. Right click the “2007 Public Folder Database” and select “Delete”. Wait for the replication to occur.

  28. Exchange 2013 Public Folders – A step toward high availability & moving to Sharepoint « MSExchangeGuru.com Says:

    [...] Exchange 2013 Public Folders Migration – http://msexchangeguru.com/2013/04/18/exchange2013-public-folders/ [...]

  29. Simon Mutuku Says:

    [PS] C:\Windows\system32>Get-PublicFolderMigrationRequest | Get-PublicFolderMigrationRequestStatistics -IncludeReport |
    fl
    Creating a new session for implicit remoting of “Get-PublicFolderMigrationRequest” command…

    RunspaceId : ec7748e2-3b24-479b-a98d-af2f502f940c
    Name : PublicFolderMigration
    Status : Failed
    StatusDetail : FailedOther
    SyncStage : CreatingFolderHierarchy
    Flags : IntraOrg, Pull, Suspend, SuspendWhenReadyToComplete
    RequestStyle : IntraOrg
    Direction : Pull
    Protect : False
    Priority : Normal
    Suspend : True
    SourceVersion : Version 14.3 (Build 123.0)
    SourceDatabase : Public Folder Database 1619818525
    SourceServer : HFDT1MBX08.******************************
    BatchName :
    OutlookAnywhereHostName :
    RemoteCredentialUsername :
    AuthenticationMethod : Basic
    RemoteMailboxLegacyDN :
    RemoteMailboxServerLegacyDN :
    BadItemLimit : 49
    BadItemsEncountered : 0
    LargeItemLimit : 0
    LargeItemsEncountered : 0
    FolderToMailboxMap : {\}
    QueuedTimestamp : 6/8/2013 4:22:39 PM
    StartTimestamp : 6/8/2013 4:44:04 PM
    LastUpdateTimestamp : 6/8/2013 4:44:05 PM
    InitialSeedingCompletedTimestamp :
    FinalSyncTimestamp :
    CompletionTimestamp :
    SuspendedTimestamp :
    OverallDuration : 1.18:53:06
    TotalFinalizationDuration :
    TotalDataReplicationWaitDuration :
    TotalSuspendedDuration :
    TotalFailedDuration : 1.18:31:40
    TotalQueuedDuration : 00:21:24
    TotalInProgressDuration : 00:00:01
    TotalStalledDueToCIDuration :
    TotalStalledDueToHADuration :
    TotalStalledDueToReadThrottle :
    TotalStalledDueToWriteThrottle :
    TotalStalledDueToReadCpu :
    TotalStalledDueToWriteCpu :
    TotalStalledDueToReadUnknown :
    TotalStalledDueToWriteUnknown :
    TotalTransientFailureDuration :
    TotalIdleDuration : 00:00:00
    MRSServerName :
    EstimatedTransferSize : 0 B (0 bytes)
    EstimatedTransferItemCount : 0
    BytesTransferred : 0 B (0 bytes)
    BytesTransferredPerMinute :
    ItemsTransferred : 0
    PercentComplete : 10
    PositionInQueue :
    PreventCompletion : True
    FailureCode : -2146233088
    FailureType : DataValidationException
    FailureSide : Target
    Message : Error: Property expression “All New Users” isn’t valid. Valid values are: Strings
    formed with characters from A to Z (uppercase or lowercase), digits from 0 to 9, !,
    #, $, %, &, ‘, *, +, -, /, =, ?, ^, _, `, {, |, } or ~. One or more periods may be
    embedded in an alias, but each period should be preceded and followed by at least
    one of the other characters. Unicode characters from U+00A1 to U+00FF are also
    valid in an alias, but they will be mapped to a best-fit US-ASCII string in the
    e-mail address, which is generated from such an alias.
    FailureTimestamp : 6/8/2013 4:44:05 PM
    IsValid : True
    ValidationMessage :
    OrganizationId :
    RequestGuid : 72b8a1ff-242e-4062-ac00-4242dfdc3a0e
    RequestQueue : DB21
    ExchangeGuid : 40726776-b9d0-46d8-a728-d1789c1d370b
    Identity : RequestGuid (72b8a1ff-242e-4062-ac00-4242dfdc3a0e), RequestQueue:
    (fc85afdb-de94-43a9-ac95-5b5b71183ba2)
    Report : 6/8/2013 4:22:38 PM [HFDT1MBX18] ‘******************************/Servers/craadmin’ created
    request.
    6/8/2013 4:44:03 PM [HFDT1MBX16] The Microsoft Exchange Mailbox Replication service
    ‘HFDT1MBX16.******************************’ (15.0.620.24 caps:3F) is examining the request.
    6/8/2013 4:44:03 PM [HFDT1MBX16] Connected to target mailbox
    ’40726776-b9d0-46d8-a728-d1789c1d370b’, database ‘DB21′, Mailbox server
    ‘HFDT1MBX16.******************************’ Version 15.0 (Build 620.0), proxy server
    ‘HFDT1MBX16.******************************’ 15.0.620.24 caps:3FCB07FFFF.
    6/8/2013 4:44:03 PM [HFDT1MBX16] Connected to source mailbox ”, database ‘Public
    Folder Database 1619818525′, Mailbox server ‘HFDT1MBX08.******************************’
    Version 14.3 (Build 123.0).
    6/8/2013 4:44:03 PM [HFDT1MBX16] Request processing started.
    6/8/2013 4:44:04 PM [HFDT1MBX16] Stage: CreatingFolderHierarchy. Percent complete:
    10.
    6/8/2013 4:44:05 PM [HFDT1MBX16] Initializing folder hierarchy from mailbox ”: 72
    folders total.
    6/8/2013 4:44:05 PM [HFDT1MBX16] Folder creation progress: 0 folders created in
    mailbox ’40726776-b9d0-46d8-a728-d1789c1d370b’.
    6/8/2013 4:44:05 PM [HFDT1MBX16] Fatal error DataValidationException has occurred.

    ObjectState : New

    [PS] C:\Windows\system32>

  30. TBone Says:

    When I run .\Export-PublicFolderStatistics.ps1, I get:

    Parameter declarations are a comma-separated list of variable names with option
    al initializer expressions.
    At C:\Program Files\Microsoft\Exchange Server\Scripts\Export-PublicFolderStatis
    tics.ps1:16 char:168
    + HelpMessage = “Full path of the output file to be generated. If only
    filename is specified, then the output file will be generated in the current di
    rectory.”)] <<<<

  31. Prabhat Nigam Says:

    @Tbone

    The format is: .\Export-PublicFolderStatistics.ps1 \\servername\path\filename.csv
    Did you miss file path or name…. See the help message.

  32. TBone Says:

    @ Prabhat Nigam

    This is the exact input:.\Export-PublicFolderStatistics.ps1 C:\PFMigration\PSmapnametosize.csv

    I have seen where you should be on PShell 2.0. I am updating now.

  33. Prabhat Nigam Says:

    @TBone
    Kindly use the below cmd.
    .\Export-PublicFolderStatistics.ps1 \\Servername\C$\PFMigration\PSmapnametosize.csv

  34. TBone Says:

    @ Prabhat Nigam

    Same results either way.

  35. Prabhat Nigam Says:

    @TBone
    share the folder PFMigration folder and use below cmd
    .\Export-PublicFolderStatistics.ps1 \\Servername\PFMigration\PSmapnametosize.csv

  36. TBone Says:

    I think it was Power Shell 2.0. It worked this time.

  37. Prabhat Nigam Says:

    @Tbone
    It has to be unc path. 2013 does not accept c:

  38. TBone Says:

    @ Prabhat Nigam

    Well I was running script from 2007 not 2013. I used c: and it worked fine, but thank you for a quick response. I now am getting to many corrupt items when running

    New-PublicFolderMigrationRequest -SourceDatabase (Get-PublicFolderDatabase -Server servername) -CSVData (Get-Content C:\temp\Mapgen.csv -Encoding Byte)

    What’s the parameter to allow multiple bad items?

  39. Prabhat Nigam Says:

    -BadItemLimit

    You might also need AcceptLargeDataLoss

    http://technet.microsoft.com/en-us/library/dd351123(v=exchg.150).aspx

  40. Doug Says:

    Thanks for the article.

    I have follow all the instrustions. The replication status Failed after abount an hour. Any suggestion would be greatly appreciated.

  41. Prabhat Nigam Says:

    @Doug
    This article very well as this is a tested article.
    I would like to know on which step you got replication failed.
    My first thought is any firewall.

  42. Brandon Says:

    Best article I found, thank you for taking the time to document.

    My issues: when I initiated New-PublicFolderMigrationRequest it ended up having an error. In order to get it to work I had to append “-BadItemLimit 1000″ to get it to finally complete (however I did check the log to see that there were no missing items and 0byte missing), still not sure how I’d correct the errors it had.

    I’m also having the issue of “The public folder database ‘Public Folder Database’ contains folder replicas.”. I’m trying to find all links to the public folder database in ADSI Edit before removing it with that method (currently I removed my PF’s from the databases) via http://exchangeserverpro.com/remove-default-public-folder-database-exchange-mailbox-database/

    When I do a Get-PublicFolder command it errors out “There is no existing PublicFolder that matches the following Identity: ‘\’.” although Get-PublicFolderStatistics shows the folder items that got migrated and are still stuck on this machine (the storage group and database are the same as before and on the other server it shows the owner). How would you delete these remaining items? I’m assuming this is what’s keeping the DB from being removed.

  43. Prabhat Nigam Says:

    @Brandon
    Bad Items can be corrupted items which can only deleted or left like this.

    If you are able to see any access all PFs from 2013 mailboxes then I would not mind removing it from ADSIEdit.

  44. TC Says:

    Hi,

    Great how-to!

    However under my V14\scripts directory, I don’t have Export-PublicFolderStatistics.ps1 or PublicFolderToMailboxMapGenerator.ps1.

    Can I get them from somewhere? #Stuck.

    Thanks

  45. Prabhat Nigam Says:

    @TC
    Check on 2013

  46. TC Says:

    Thank you!
    All went through successfully and I can see my public folder mailbox, but I can’t see the Public folder itself…I don’t entirely understand it either…Any help would be great thanks.

  47. Prabhat Nigam Says:

    @TC
    Where are you checking?

  48. TC Says:

    Under Public folders via ECP.

  49. Prabhat Nigam Says:

    Check in the shell

  50. Siva Says:

    Hi ,

    I am trying to migrate exchange server 2007 public folder to exchange online(office 365), actually I have tried many article to configure but I couldn’t able to do successfully. Can you please tell me how to do the migration for the same.

    thanks,
    Sivaraman

  51. Prabhat Nigam Says:

    Hey Siva

    This blog is not for O365 but it will be almost the same process.
    I am adding below technet links for you, I hope this will help.

    http://technet.microsoft.com/en-us/library/jj983799(v=exchg.150).aspx

  52. “Legacy Exchange Servers Decommission” Post Exchange 2013 Migration « MSExchangeGuru.com Says:

    […] http://msexchangeguru.com/2013/04/18/exchange2013-public-folders/ […]

  53. Cathy Allington Says:

    Thank you!! Does this process alsi migrate custom view on the Public Folder?

  54. Prabhat Nigam Says:

    @Cathy
    I don’t see why will it not migrate but I recommend testing in lab before production.

  55. tony Says:

    Hi, i have a problem during public folder migration between exchange 2010 and 2013. It creates the hierarchy but stop at 26% and i have the status “StalledDueToReadUnknown”.

    Thanks for help

  56. Prabhat Nigam Says:

    @Tony
    Few things to check
    1. You had permissions
    2. On source side if there are item level permissions then clean it using exfolders.
    3. Any stall migration might need to be restarted.
    4. You might need to do the cleanup before restarting the migration.

  57. tony Says:

    Thanks for reply,the process had copied few messages so i think i have permissions but how can i verify this?
    how do you do the cleanup before restarting migration?

    Thanks

    Tony

  58. Prabhat Nigam Says:

    For Verifying the permissions Please use Exfolders utility on 2010
    Download from here – http://gallery.technet.microsoft.com/office/Exchange-2010-SP1-ExFolders-e6bfd405
    How to use from here – http://mouzzamh.wordpress.com/2012/04/01/how-to-use-exfolder-tool-for-exchange-2010/
    Some Release notes – http://blogs.technet.com/b/exchange/archive/2009/12/04/3408943.aspx

  59. Exchange 2013: Cross Forest/ORG Migration from Exchange 2010/2007 « MSExchangeGuru.com Says:

    […] Exchange 2013 PF Migration Guide – http://msexchangeguru.com/2013/04/18/exchange2013-public-folders/ […]

  60. ttac Says:

    Hi there, thanks for your Manual, the Migration has worked but i ran into an issue. (From SBS Exchange 07 to Exchange 13 windows Server 12)
    I migrated all Public Folder and i can see them all in Exchange-Shell and ECP. On our legacy Exchange theyre gone (Toolbox -> Public Folders)

    Now my Problem is, when i connect my Administrator Mailbox in Outlook 2007, it only shows me 5 out of 10 Public Folders. Same with an other client.
    Whats my Problem here?

    Cheers

  61. Prabhat Nigam Says:

    @ttac
    You might need to verify the permissions!

  62. ttac Says:

    Thanks for your Reply, thats exactly what i found out. Sometimes you dont see the easiest solution.
    Thanks again for your manual!

  63. mike selman Says:

    I get an error migrating from 2010 to 2013.

    Version 14.3 (Build 123.0).
    Request processing continued, stage CreatingFolderHierarchy

    Fatal error MapiExceptionNoReplicaAvailable has occurred.

    ObjectState : New

  64. Prabhat Nigam Says:

    -You can’t replicate to 2013. You have to follow this article for the migration.
    -I would recommend to upgrade to 2013 CU2 if your servers are on CU1. This might resolve the issue.

    -Next check this forum link – http://social.technet.microsoft.com/Forums/exchange/en-US/56bff701-1884-4d15-a571-82bbdba4bbb3/post-2010-migration-public-folder-issues-mapiexceptionnoreplicaavailable-after-uninstall-of?forum=exchange2010

    -I also got the below Microsoft KB for the error you got. Make sure you have backup before following the resolution mentioned in this kb.
    http://support.microsoft.com/kb/2866631

    Let me know if this helps.

  65. Mike Selman Says:

    I followed the steps in this article to the letter… Im not trying to replicate anything, that is the mystery. I will check the links though and report back.

  66. Mike Selman Says:

    CU2 fixed my issues.

    What gets me is that MS sent us this Action Pack of Exchange 2013 recently. We were only pushing Exch 2013 out this early to stay within MS Action Pack compliance requirements. They recently audited us and informed us we must roll out before Dec or we’d lose our 2014 Action Pack.

    As I pushed the initial install through it specifically asked if I wanted to check for updates which of course I did. Also, after install no updates were available via Windows Update, even as Server 2012 had the usual updates, patch day releases etc.

    It took scouring forums for a fix for our issue, to find a cumulative update is available. I hate it when I over look these things but MS are MS after all. Even when I called MS Support to use one of our Action Pack support session, they said not in this case, we’d have to pay the $260. In a nutshell, we’d have paid to have them tell us they have an update we should use. Typical.

    Thanks again!

  67. Prabhat Nigam Says:

    @Mike
    CU2 was suggested by me so you should have followed my suggestion as CU2 installation is always recommended.
    If there is an issue which is a bug and resolved by a service pack or cumulative update or hot-fix then Microsoft used to refund the case charges. Write to support Engineer’s manager.

  68. Mike Selman Says:

    Hi Prabhat, we didn’t actually go that route, instead I followed your advice. I had initially followed TechNet migration steps but after I found the error I discovered this page. Much more clear and concise steps here.

  69. Mike Selman Says:

    Did run into more issues further into the migration, but now I see that MS acknowledge them and will be releasing CU3 soon. This is why when we aren’t ‘forced’ we would wait for a Service Pack

  70. Prabhat Nigam Says:

    Hey Mike,
    Would you like to share the issues? I might be able to help you with any available work around.

    CU3 should be released soon. below blog is another place where you can comment and Microsoft team will have a look on your comments.
    http://blogs.technet.com/b/exchange/archive/2013/11/13/exchange-server-the-road-ahead.aspx

  71. Toby Says:

    I have completed most of the process but after kicking off the New-PublicFolderMigration, and getting no errors, the status has been stuck at QUEUED for 12 hours. We do have a large PF store (18GB). No events in any logs point to any problems. Checking status, or making token change like baditemlimit and then resuming the PFmigraiton has no affect. Can’t seem to find any information on what happens after QUEUED but before the process starts moving items.

  72. Prabhat Nigam Says:

    Try to check report after running the command

    Get-PublicFolderMigrationRequest | Get-PublicFolderMigrationRequestStatistics -IncludeReport | fl

  73. Toby Says:

    Still shows as being queued.

  74. Toby Says:

    I tried to paste the output of the command but it won’t post. Can I email that to you. Looks okay to me but maybe you’ll see something I’ve missed.

  75. Prabhat Nigam Says:

    email me – prabhat@msexchangeguru.com

  76. Prabhat Nigam Says:

    Update to the Toby’s issue.
    - There were 2 issues
    - All mailbox databases were removed so there was no system mailbox. I have reported this test case to Microsoft and they are testing this test case.
    - Space in the alias of the Public folders.

    After removing the space from the alias of the PF, migration is running.
    I assume space was the issue in Simon’s case as well.

  77. John Says:

    Hello

    I migrated succesfully an ex2007 to 2013 with 85 mailboxes. Now, after the remove of the public Folder database in the EMC of the ex2007 i get now the following error:

    Eventid 2937 MSExchange ADAccess Process w3wp.exe FE_RpfHttp. Object CN Mailbox Database (ex 2013) ,… Property PublicFolderDatabase is on value Domain/configuration/deleted Objects/PublicFolderDatabase DEL:fxxxx-xxxx-xxxx-xx, set and Shows up to Container deleted objects into AD. You have to fix it asap..

    Ok, i figured out in the adsi edit the value. But, if i delete this value, -> if i look into the emc 2013 i the Primary Hierarchie and secondary and everything is working well and all users have their public Folder <- what happends? i readed a lot, to set it to the value of the CN Mailbox Database (ex 2013). Which value should i copy paste?

    Next, i have the publicfolder into the same database like the mailboxes.

    Would be happy to get a right answer, cause at this time everything works 101% perfect! :)

    Thanks, John

  78. Prabhat Nigam Says:

    @John,
    Don’t worry. Exchange 2013 does not use this property. Alternatively you can run the below cmd to remove this configuration

    Get-mailboxdatabase | set-mailboxdatabase -PublicFolderdatabse $null

    I will not recommend using Adsiedit.
    Let me know.

  79. Jay Says:

    Hello Prabhat Nigam,
    I am getting the below error while migrating PF from Exch 2010 to Exch 2013 pls advise

    WARNING: An unexpected error has occurred and a Watson dump is being generated: Object reference not set to an instance
    of an object.
    Object reference not set to an instance of an object.
    + CategoryInfo : NotSpecified: (:) [New-PublicFolderMigrationRequest], NullReferenceException
    + FullyQualifiedErrorId : System.NullReferenceException,Microsoft.Exchange.Management.RecipientTasks.NewPublicFold
    erMigrationRequest
    + PSComputerName : hitexch-2013.hit.com

  80. Prabhat Nigam Says:

    @Jay
    It seems you are running the 6th step. Correct me if it is not the case.
    Make sure your legacy PF replication has finished, there is no -,\ or some unexpected characters in the legacy PF name and alias.
    Give me the command which you are running. Let me know more about your environment.

  81. Jay Says:

    Hi Prabhat,
    Yes I am running 6th step. how can I check the legacy PF replication?
    my environment is
    Single exchange server with 100-150 mail boxes and an public folder DB, it is exch 2010.
    I installed Exch 2013 as CAS, Mailbox in a single server and moved all the mailboxes, including arbitration mailboxes.
    now I try to move the publicFolders as per the steps which you mentioned…
    and While doing 6th step I am getting this error…
    please I need help to move PF successfully
    Thanks
    Jay

  82. Jay Says:

    Hi Prabhat,
    the below is the size.csv export
    “FolderName”,”FolderSize”
    “\IPM_SUBTREE”,”0″
    “\IPM_SUBTREE\Internet Newsgroups”,”0″
    “\NON_IPM_SUBTREE”,”0″
    “\NON_IPM_SUBTREE\EFORMS REGISTRY”,”0″
    “\NON_IPM_SUBTREE\OWAScratchPad{C1F9AA99-07B1-489B-BACF-D30C429C4503}”,”0″
    “\NON_IPM_SUBTREE\schema-root”,”0″
    “\NON_IPM_SUBTREE\schema-root\Default”,”0″
    “\NON_IPM_SUBTREE\schema-root\microsoft”,”0″
    “\NON_IPM_SUBTREE\schema-root\microsoft\exchangeV1″,”395162″
    “\NON_IPM_SUBTREE\StoreEvents{C1F9AA99-07B1-489B-BACF-D30C429C4503}”,”0″
    “\NON_IPM_SUBTREE\StoreEvents{C1F9AA99-07B1-489B-BACF-D30C429C4503}\globalevents”,”0″
    “\NON_IPM_SUBTREE\StoreEvents{C1F9AA99-07B1-489B-BACF-D30C429C4503}\internal”,”0″

    and Map.csv is below
    “FolderPath”,”TargetMailbox”
    “\”,”Mailbox1″

    Creating PF mailbox using the below cmdlet
    New-Mailbox -PublicFolder Mailbox1 -HoldForMigration:$true -Database “Mailbox Database 0039810732″

    Then running PF migration cmdlet as below (6th step)
    New-PublicFolderMigrationRequest -SourceDatabase (Get-PublicFolderDatabase -Server hitexch-2010) -CSVData (Get-Content c:\pfimport\PF-mailbox.csv -Encoding Byte)

    thanks
    Jay

  83. Jay Says:

    Hi Prabhat,
    Also I checked the the legacy PF replication as below cmdlet
    Get-OrganizationConfig | select PublicFoldersLockedforMigration, PublicFolderMigrationComplete

    PublicFoldersLockedForMigration PublicFolderMigrationComplete
    ——————————- —————————–
    False False

    Please Advise,
    Thanks
    Jay

  84. Prabhat Says:

    Do u see any data in the PF?
    If yes then you need to get permissions. It does not seems you have access to it. You can see the size is showing zero in the size.csv

  85. Jay Says:

    Hi Prabhat,
    There were no any data on the PF and we are not using it also, Just I migrated from Exch 2003 to exch 2010 and now I would like to move to Exchange 2013 that’s all. In this case how do I migrate?

    If I remove PF without migrating to decommissioning exch 2010 server will affect any ting to the outlook users, or AD environment, or I will face any serious problems in feature?

    Please Advise,
    Thanks,
    Jay

  86. Prabhat Nigam Says:

    Exchange 2013 does not use the PF the way it was used in the 2010 and 2003.
    So if it is blank then no need of migration. User will not loose anything as there is no data.

  87. Jay Says:

    Hi Prabhat,
    Thanks a lot…for the advise

    Regards,
    Jay

  88. dean132 Says:

    Hi would it be possible to use this process to migrate my Exchange 2007 Public Folders to Exchange 2007 Resource Mailboxes? We are trying to get out environment ready for an O365 migration and we have around 1000 public folders most with public calendars in. We are looking for a way to automate the process.

  89. Prabhat Nigam Says:

    @Dean
    Export the data to pst then create resource/shared mailbox and import the data.

    I would recommend a test before Production data.

  90. Exchange 2007 to 2013: Public Folder Migration Issue « MSExchangeGuru.com Says:

    […] Public Folders migration is not moving forward after step 6 in the migration blog here […]

  91. Zarky Says:

    Hey all
    So I’ve been stuck on this PF migration for some time, AD permissions and am running out of ideas
    What I’ve tried
    user migrating PF can access all the pf’s
    user is Org Admin and PF admin on 2007 and 2013 groups.
    User has full access to the root PF
    This is the error…
    I’ve repeatedly deleted the PF on 2013 and recreated for migration

    Any assistance would be appreciated.

    FailureCode : -2146233088
    FailureType : ADOperationException
    FailureSide : Target
    Message : Error: Active Directory operation failed on CORP2008DC01.Domain.com. This
    error is not retriable. Additional information: Insufficient access rights to
    perform the operation.
    Active directory response: 00002098: SecErr: DSID-03150BB9, problem 4003
    (INSUFF_ACCESS_RIGHTS), data 0
    –> The user has insufficient access rights.
    FailureTimestamp : 2/26/2014 3:21:07 PM
    IsValid : True
    ValidationMessage :
    OrganizationId :
    RequestGuid : 168498fe-cc9e-4d25-a7ff-b2e376c9f2cd
    RequestQueue : DB01
    ExchangeGuid : 3824a2c8-6597-4cd4-a28e-f06b3aa137c1
    Identity : 6d80a38a-f7e0-4589-bf76-c6ae64ae1097\168498fe-cc9e-4d25-a7ff-b2e376c9f2cd
    DiagnosticInfo :
    Report : 2/26/2014 3:20:59 PM [CORP2013EX01] ‘Domain.com/Admin Accounts/Exchange
    PublicFolderAdmin’ created request.
    2/26/2014 3:21:06 PM [CORP2013EX01] The Microsoft Exchange Mailbox Replication
    service ‘CORP2013EX01.Domain.com’ (15.0.775.35 caps:3F) is examining the
    request.
    2/26/2014 3:21:06 PM [CORP2013EX01] Connected to target mailbox
    ’3824a2c8-6597-4cd4-a28e-f06b3aa137c1′, database ‘DB01′, Mailbox server
    ‘CORP2013EX01.Domain.com’ Version 15.0 (Build 775.0), proxy server
    ‘CORP2013EX01.Domain.com’ 15.0.775.35 caps:07FFCB07FFFF.
    2/26/2014 3:21:06 PM [CORP2013EX01] Connected to source mailbox ”, database
    ‘CORP2007MBX01\Second Storage Group\Public Folder Database’, Mailbox server
    ‘CORP2007MBX01.Domain.com’ Version 8.3 (Build 330.0).
    2/26/2014 3:21:06 PM [CORP2013EX01] Request processing started.
    2/26/2014 3:21:07 PM [CORP2013EX01] Stage: CreatingFolderHierarchy. Percent
    complete: 10.
    2/26/2014 3:21:07 PM [CORP2013EX01] Initializing folder hierarchy from mailbox ”:
    340 folders total.
    2/26/2014 3:21:07 PM [CORP2013EX01] Folder creation progress: 0 folders created in
    mailbox ’3824a2c8-6597-4cd4-a28e-f06b3aa137c1′.
    2/26/2014 3:21:07 PM [CORP2013EX01] Fatal error ADOperationException has occurred.

  92. Prabhat Nigam Says:

    @Zarky

    I hope this is single forest migration.
    This looks like AD issue, the user should have org management and domain admins. check if this id has inheritance check.
    Also check your AD is healthy. IF it is not healthy then on one of the DC we might miss this user permission.
    After adding the permissions you need to log off and login back to make it effective.

    On 2007 use PFDAVAdmin and remove item level permission. This is another option if nothing works.

    Let me know if this helps.

  93. Zarky Says:

    @Prabhat
    Thanks for looking at this.
    I did find that when the user is both Domain admin, org management and exchange org management the the “inheritance check” gets unchecked after a while.
    if I omit the domain admin the inheritance stays checked.
    I’ve been at this for 3 weeks and its looking ridiculous. Microsoft exchange says it and AD issue open a ticket with them and AD says its and exchange 2013 issue.
    I just need to know where exactly the permission is failing? Is it on the 2007 side or on the 2013 side? are there logs I can enable to follow step by step what exchange is doing and where it fails?
    Thanks

  94. Prabhat Nigam Says:

    could you rerun the command just after you add the inheritance permission on verify. Looks like AD issue.

    Are you saying you have a Microsoft ticket open? You need to make both of them discuss.

    By the way got any chance to try pfdavadmin.

  95. Zarky Says:

    Hi Prabhat
    I looked at PFVDAdmin, really stopped using that when 2007 exchange came out. Feel more comfortable with powershell.
    Going back to PFVDAdmin feels “clunky”. all the permissions on the legacy public folders is ok.
    Microsoft saying it looks like the Databases within the DAG are causing the issue. Normal mailboxes are ok but the public folder mailbox creation is not ok.
    They suggest to create a new database and not add it to the DAG then see if the public folder to mailbox works, after move the mailbox into the database within the DAG.
    working this…

  96. Prabhat Nigam Says:

    Possible to have an issue within the database but I have never heard that Dag will be a problem.

    What is your exchange 2013 level.

    I think I would have asked for a Microsoft link which says migrate PF on a non-dag database.

    If it works for you then the next worry is to replicate the Hugh database file to 2nd server of DAG.

  97. Zarky Says:

    An update to this case.
    Im hoping this thread will be searchable for others as the answer is simple but undocumented and very misleading.
    Run get-mailpublicfolder on the 2007 exchange server, look for YELLOW warnings similar to those you get on Get-mailbox and get-distributionlist.
    Yellow warning saying something like this:

    =============================
    WARNING: Object domain.com/Microsoft Exchange System Objects/Research & Technical Service has been corrupted
    and it is in an inconsistent state. The following validation errors have occurred:
    WARNING: “Research & Technical Service” is not valid for Alias. Valid values are: Strings formed with characters from a
    to z (uppercase or lowercase), digits from 0 to 9, !, #, $, %, &, ‘, *, +, -, /, =, ?, ^, _, `, {, |, } or ~. One or
    more periods may be embedded in an alias, but each one of them should be preceded and followed by at least one of the
    other characters. Unicode characters from U+00A1 to U+00FF are also valid in an alias, but they will be mapped to a
    best-fit US-ASCII string in the email address which is generated from such an alias.
    =============================

    Do a
    get-mailpublicfolder “warning PF here” | select identity, alias (on the exchange 2007 box)

    Verify that Alias has no spaces or any other special characters not in the warning list…..

    3 weeks of this! WOW ms…. no KB for us? oh yes a $2500 support bill.

    This environment came from exchange 2000 hence this kind of show stopping error.

    -Z

    Exchange 2013 is CU3
    The Create new DB and PF on that DB also failed (not in the DAG).

  98. Prabhat Nigam Says:

    I think I said the same thing.

    Anyways, let us see what we can do.

    1. Check if setup.exe /preparedomain fix this issue. If not then try the next 2 steps.
    2. Use PFDavadmin and propagate the permission of your id to all PFs. Take the owner or editor permission at the root.
    3. Add full access and send as to your id on the 2013 PF mailbox. Now restart “Exchange mailbox replication service”.

    Meanwhile ask for the escalation in MS for the escalation Engineer to come and help you.

  99. Zarky Says:

    @Prabhat
    The case is resolved

    ./setup /pd and ./setup /pad did not work, this was MS’s first troubleshooting step.

    The permissions were perfect what was wrong was the “Alias” field for mail enabled public folders has a “space” in it. This threw an AD error looking like a permissions issue when attempting to do a PF migration.

    I got an escalation out of India to Dallas TX. This 3rd lvl support drilled to the issue within 5 min.
    Case Solved

    Thanks All
    -Z

  100. Prabhat Nigam Says:

    @Zarky

    Happy to see you are in happy zone and moving.
    But unhappy to see this solution. I assumed that you have checked this. Updating the blog as a pre step.
    At 76 number comment I have shared the solution of other person. Which has mentioned alias space as a solution.
    I think MS also suggested you earlier to check the space. Space and special characters are the basic configurations

    By the way TX support always takes 5 minutes. They are the best and last level so only look for them when nothing else left.

  101. Wes Says:

    Hey Man,

    I’m getting error “StalledDueToMailboxLock”. I’ve tried everything from restarting services, mailbox servers and dismount databases. It’s still give the same error after initialization. Do you have any idea of what could be the error.

    Thanks
    Wes

  102. Prabhat Nigam Says:

    This is a very common issue. Are you stuck on step 7. If yes then Try the following:

    1. Try to restart the Information store on the source PF mailbox servers. This can be coming because of this command has not replication to all other PF replica servers

    2. Run the step 7 on Source PF Server.

    3. Restart information store on Exchange 2013 server.

    4. Verify your permissions, you should be org management and domain admin.

  103. Wes Says:

    I’m stock on Step 5. When I did step 5, it upload 95 GB of data. I had to suspend it for about a month due to change freeze.
    When I tried to resume it to upload the current changes, it immediately gave me the error “StalledDueToMailboxLock”.
    I do have org management and domain admin.
    I tried restart the Information store on the source PF mailbox servers and information store on Exchange 2013 server.
    It took a week for that much data to upload, I’m trying not to remove it and restart over.

    Thanks
    Wes

  104. Prabhat Nigam Says:

    Normally this issue comes of step 7.
    Step 5 is mailbox creation so I assume you are at step 6.
    We have also heard that resume worked for some people but in your case I would recommend to do it from start because we hold it for long.
    I think 95 GB in 1 week is too slow.

    Could you check the network and load balancer? Load balancer has also caused the issue for few customer.

  105. Samuel Fossett Says:

    This is really interesting, You are a very skilled blogger.

    I have joined your rss feed and look forward to seeking more of your great post. Also, I have shared your web site in
    my social networks!

  106. Prabhat Nigam Says:

    All – Watch for this attribute

    IsExcludedFromServingHierarchy
    This parameter prevents users from accessing the public folder hierarchy on the specified public folder mailbox. For load-balancing purposes, users are equally distributed across public folder mailboxes by default. When this parameter is set on a public folder mailbox, that mailbox isn’t included in this automatic load balancing and won’t be accessed by users to retrieve the public folder hierarchy. However, if you set the DefaultPublicFolderMailbox property on a user mailbox to a specific public folder mailbox, the user will still access the specified public folder mailbox even if the IsExcludedFromServingHierarchy parameter is set for that public folder mailbox.

  107. Prabhat Nigam Says:

    All

    To do a hierarchy sync the PF mailbox use the command below:
    Update-PublicFolderMailbox –Identity ‘PFMBX2’ –InvokeSynchronizer –FullSync (where PFMBX2 is the name if the PF mailbox you want to synchronize)

    You can also use the below cmd to troubleshoot or check the syncinfo of the PF hierarchy. Run the command and look for Syncinfo

    Get-PublicFolderMailboxDiagnostics

  108. Joe Says:

    I am in the middle of a 2010 to 2013 Exchange Migration. I have the VIPs of the company left to migrate, if I migrate the Public Folders from 2010 to 2013 will the 2010 mailboxes be able to access the Public Folders on 2013.

    Thanks in Advance,
    Joe

  109. Prabhat Nigam Says:

    Answer is No.
    This is mentioned in the Assumptions.

    You need to move VIPs before Completing the PF migration.
    You can complete till step number 6 anytime because it just moves the data to 95%.

  110. Joe Says:

    That was what I was assuming from the documentation I had read, but wanted confirmation. So if I did complete through step 5 and it was a couple more business days before the VIPs were moved would I have to repeat the process? This is my first Exchange 2013 migration so I’m being extra careful.

    Joe

  111. Prabhat Nigam Says:

    No Worries Joe

    Hope you got the answer. :)

  112. Joe Says:

    So I kicked off the migration but it looks like the Public Folders are in a stalled state due to HA. The Exchange 2013 is in a DAG, I have done a fair bit of looking around for a solution. So does anyone have any idea how to get this data to migrate as part of step 5?

    My thought is postpone database replication for a try, but I’m looking for a little insight from someone more knowledgeable than I.

    Joe

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.