Best practices for public folder preparation before migrations
Published Nov 19 2020 10:33 AM 37.1K Views

We wanted to share some best practices to prepare the on-premises public folders for migration to Exchange Online. The document will walk you through the overview of process to migrate public folders to Exchange Online, using the native tools as well as talk about best practices and tools used for trouble free migration.

Public folder migration process overview

A quick overview of how the native migration process works follows. The intention here is not to walk through details of each step of native migration, that is already done here and here.

PFmigrationprep01.jpgPreparation is the key step, and we will be spending majority of this post on that part, which will ensure you face minimal issues during the actual migration.

As part of preparation you will:

  • Find out stale/unwanted public folders and remove them
  • Validate existing public folders for known issues and fix any issues found
  • Check the size of existing public folders and public folder items and ensure they are not too large
  • Create the mapping file and target PF mailboxes

Out of scope of this post: once all the preparation is completed, creation of a migration batch using a mapping file and starting of the migration batch.

Before we dive into the details of preparation, here are some of the highlights of the native migration process:

  • There is no option to migrate only some public folders, therefore:
    • You must remove unwanted public folders if you don’t want them to be migrated.
    • If you wish to migrate some public folders to Microsoft 365 Groups, you should do this before you migrate the rest of your public folders to Exchange Online.
  • Only one migration batch is allowed - all public folders will be migrated in a single batch.
  • Once the migration is completed, no more data from source public folders can be copied over to Exchange Online public folders.
  • Maximum of 250,000 public folders can be migrated to Exchange Online.

Preparation

As the famous quote goes “By failing to prepare, you are preparing to fail”; this applies to public folder migration. Let us now explore detailed steps of preparing the public folders at source.

Cleanup

We need to start with inventory. This is the time to take inventory of public folder deployment at the source. Find out stale public folders out there and decide if those folders are really needed? Do you really need to migrate data that has not been accessed for years?

The following commands show public folders that do not have user activity for last two years:

Exchange 2010:

$date=(Get-date).AddMonths(-24)
Get-PublicFolderStatistics -ResultSize unlimited | ?{$_.LastUserAccessTime -le $date}

Exchange 2013+:

$date=(Get-date).AddMonths(-24)
Get-PublicFolderStatistics -ResultSize unlimited | ?{$_.LastModificationTime -le $date}

Note: LastUserAccessTime is available only in Exchange 2010, not in later versions.

On public folder replicas (legacy public folders)

On a simple side of things, an organization might have a single (or two) public folder databases on two servers, with actual public folder data (replicas of actual content) on both servers. This can then scale to organizations that have 10s of public folders servers with complicated replication strategy.

The best chance of success to have timely migration can be achieved by having as few copies of same public folder data (replicas) as possible. Consider that during the migration stage, users are still using public folders as they currently are. The more replicas of public folder content there are, the more places we have where public folder data can be written to or changed. This then results in public folder replication process between different replicas. Many an Exchange administrator has spent lots of time troubleshooting legacy public folder replication – which can be challenging even if there is no migration going on at the same time!

Our recommendation therefore is to consider that in a large public folder environment, it might be worth it to consolidate / remove some folder replicas and therefore reduce complexity / data churn during the migration finalization stage. Also, you want to make sure that all the public folder databases are mounted (dismounting the database is not a way to try work around this complexity!)

Public folder size and item size

A lot of public folder migrations fail and get delayed because the individual items were too large, or a very large public folder was being migrated.

It is best to:

  • Keep the maximum individual public folder size between 15 to 25 GB.
    • Use Export-PublicFolderStatistics.ps1 to get public folder size information. If you have any public folders larger than 25 GB, you should break them up to be less than 25 GB.
    • If you are planning to migrate large public folders, ensure to change the default public folder post limit in Exchange Online.

For public folder items:

The default MaxReceiveSize on public folder mailboxes in Exchange Online is 35MB. You should find out the public folder item sizes at the source. The following command example can help:

$pf=Get-PublicFolder \ -Recurse -ResultSize unlimited;foreach ($i in $pf) {$s=Get-PublicFolderItemStatistics $i.EntryID;foreach ($r in $s) {if ($r -gt "38600") {$r.MessageSize,$r.PublicFolderName}}}

If you have public folder items that are large then 35MB, change the MaximumSend/ReceiveSize on target public folder mailboxes, once they are created in Exchange Online.

If public folder items are larger than 150 MB, you must remove these items before migration. See “Message limits” here.

Please check if any of source public folders have MaxItemSize configured:

By default, MaxItemSize is set to unlimited on individual public folders. However, if MaxItemSize is configured on individual public folder(s) and if the public folder has items larger than this size, the migration will fail.

Use the following command to identify if any individual public folder has MaxItemSize configured:

Get-PublicFolder \ -Recurse | where {$_.MaxItemSize -ne "Unlimited"}| FT Identity, MaxItemSize

Then, the use following command to change the MaxItemSize to Unlimited:

Set-PublicFolder <\PF1> – MaxItemSize Unlimited

OR

Get-PublicFolder \ -Recurse | where {$_.MaxItemSize -ne "Unlimited"} | Set-PublicFolder –MaxItemSize Unlimited

Validate - SourceSideValidation.ps1

The following are major causes for migration slowness or failures, when it comes to public folder data issues:

  • Bad ACLs
  • Issues related to Mail Enabled Public Folders (MEPF)
  • Health of dumpster folders
  • Source exceeding limitations (things like folder depth etc.)

The Source Side Validation (SSV) script was developed to analyze the on-premises public folder deployment and report issues found along with providing guidelines to fix them. The script must be run from Exchange 2010 or Exchange 2013+ server, depending on where the public folders are deployed. Use the script before the start of migration process but after you have cleaned up the source environment from folders you do not need to migrate.

To get the script to perform all the checks:

.\SourceSideValidations.ps1

To get the script to perform only public folder permission related validations:

.\SourceSideValidations.ps1 -VerifyMEPF $false -VerifyDumpsterMapping $false -CheckLimits $false -CheckPermissions $true

Mail enabled public folders (MEPF)

The following are common issues encountered during migration of MEPFs:

  • Orphaned MEPFs
  • Non_Ipm_Subtree public folder is mail enabled

The .\ValidateMailEnabledPublicFolders.ps1 script will help you find such MEPFs and provide you readily usable output to fix such MEPFs.

Target public folder mailboxes

Planning how many public folder mailboxes you need in Exchange Online is a critical task as well. You don’t want to create a ton of unnecessary public folder mailboxes and at the same time you don’t want to overload each target mailbox so that it might fill up during the migration (or soon after).

Some guidelines to remember:

  • Do not place any content in the primary hierarchy mailbox, nor point any users directly to this mailbox. You can read more about public folder deployment best practices here.
  • Plan to fill up to 50% of maximum allowed size of PF mailboxes during migration. Current maximum size of PF mailbox is 100GB. So, the “Total public folder size at source in GB”/50 should give you an idea of how many public folder mailboxes you need in Exchange Online.

So, for example, if you have 2 TB (2000 GB) of public folder data at source, you will need around 40 public folder mailboxes in Exchange Online.

The .\ModernPublicFolderToMailboxMapGenerator.ps1 file can help you get idea of how many PF mailboxes are required in Exchange Online and also provides you the mapping file.

Mapping file

The Mailbox Replication Service uses the mapping file to place source public folders into specific target public folder mailboxes. The following are some guidelines on well-defined mapping file:

  • Ensure the primary hierarchy mailbox is mapped to the root folder “\”
  • If you wish to place specific folder into a specific public folder mailbox, add the entry exclusively
  • Once the entry is added, the folder and subfolders below it will be migrated to the target mailbox specified
  • Ensure each folder that is present directly on the root has explicit mapping in the file and is mapped to a non-primary hierarchy public folder mailbox; this ensures the primary hierarchy mailbox serves only hierarchy
  • Finally, ensure the target public folder mailbox names are correct

Connectivity

Migrations can fail or produce unexpected results if connectivity to source server is unreliable.

Migration from Exchange Server 2010 works using Outlook Anywhere (RPC/HTTP), even if you have Exchange Server 2013 (or higher) acting as a FrontEnd server.

It is best to ensure the service account being used to migrate public folders can access Exchange 2010 public folders from the internet using Outlook for desktop client or Microsoft Remote Connectivity Analyzer.

You can use the Test-MigrationServerAvailability command to ensure connectivity.

If your environment uses a load balancer, it is best not to use the load balancer for MRS related traffic as this is handled by EWS and the MRSProxyEnabled property on that Virtual Directory.

Finally, if you have a firewall with very stringent inbound connectivity, ensure that Exchange Online IP addresses are whitelisted.

Changing the default quota in Exchange Online

The default prohibit post quota to public folders in Exchange Online is 2GB. The migration may not fail if your individual public folders are larger than this size, but users might not be able to post or email items to public folders as soon as the migration is complete.

The default quota can be changed at organization level:

Set-OrganizationConfig –DefaultPublicFolderProhibitPostQuota 25GB -DefaultPublicFolderIssueWarningQuota 20GB

Note: Do not set the default quota above 25 GB as it may result in giant public folders, which might cause issues with the auto-split process in the future. You can read more about auto-split feature here.

Also by default, the MaxReceiveSize and MaxSendSize on public folder mailbox is configured at 35MB. You must increase this limit to accommodate largest public folder items from on-premises:

Set-Mailbox -PublicFolder -MaxReceiveSize 50MB -MaxSendSize 150MB 

ExcludeDumpsters

The deleted public folders are stored under \Non_IPM_Subtree, also affectionately referred to as the Dumpster.

Excluding this data can help you scale your public folder migration if you do not need the data to come over. This will result in faster public folder migration as the amount of data that will need to be migrated is going to be smaller. In some cases, corrupted dumpster folders can cause migration to fail.

Migration of public folders in dumpsters can be skipped using ExcludeDumpsters parameter.

This option is available only for migrations from Exchange Server 2013+ to Exchange Online and must be specified at the time of batch creation.

Example:

New-MigrationBatch -Name PublicFolderMigration -CSVData <mapping file> -SourceEndpoint $PfEndpoint.Identity -SourcePfPrimaryMailboxGuid <GUID> -ExcludeDumpsters

That’s it!

The goal of this article was to ensure the source is prepared for a successful and hassle-free migration. Once you are done with preparation, we recommend you follow each of the migration steps from here for a trouble-free migration experience.

Bhalchandra Atre

36 Comments
Brass Contributor

Can we break off these posts into a separate Exchange Migration blog?

 

I get Microsoft needs to shepherd its humongo Fortune 500 clients to Exchange Online but there's not much on this blog these days for all of us who took the plunge and are fully cloud. For example, still waiting to hear the plan on retiring that last on-prem Exchange server!

Brass Contributor

Thanks for that great article!

 

"Do not place any content in the primary hierarchy mailbox"

 

This best practice is very hard/impossible achieve :

  • Migration scripts provided by Microsoft always maps the root hierarchy ("\") in the first PF mailbox. As a result, all PF not explicitly mapped to a specific mailbox gets migrated into mailbox 1. Also, \NON_IPM_SUBTREE always gets migrated to PF mailbox 1.
  • After the migration, Exchange Online does not allow moving PF between mailboxes (New-PublicFolderMoveRequest)
  • Hopefully, migration scripts configures the IsServingHierarchy flag to false on the primary hierarchy mailbox but I don't see how we can avoid migrating data into this mailbox using Microsoft provided scripts

Am I missing something?

 

Thanks!

@momurray the script provides skeleton of the mapping file. However, tenant admin must review and edit the file to there liking. And hence the following guideline is mentioned in the mapping file section:

 

  • Ensure each folder that is present directly on the root has explicit mapping in the file and is mapped to a non-primary hierarchy public folder mailbox; this ensures the primary hierarchy mailbox serves only hierarchy

If all public folders present directly on the root are mapped in the file, no content will go into the primary hierarchy mailbox

Brass Contributor
@Bhalchandra_Atre-MSFT So if my migration batch has 70k public folders, I have to manually ensure that each folder is explicitly mapped to a mailbox in the CSV file? Wouldn't it be easier if Microsoft improves its scripts so the root hierarchy is not assigned to the first mailbox?

@momurray you only need to create mapping entry for top level public folders, all folders beneath them will be migrated to same mailbox

Copper Contributor

@Bhalchandra_Atre-MSFT Current script "Sync-ModernMailPublicFolders.ps1" works only with Basic Auth. Is there modified script to use with Federated Auth and 2FA?

Iron Contributor

On a related note. How can I migrate on-premises public folders from Exchange 2016, cross-forest, to another Exchange 2016 org ? 

Iron Contributor

Hello Microsoft,

 

How can I migrate on-premises public folders from Exchange 2016, cross-forest, to another Exchange 2016 org ? 

Iron Contributor

Hello Microsoft,

 

How can I migrate on-premises public folders from Exchange 2016, cross-forest, to another Exchange 2016 org ? 

Iron Contributor

Hello Microsoft,

 

How can I migrate on-premises public folders from Exchange 2016, cross-forest, to another Exchange 2016 org ? 

@Krishnamoorthy Raja The script currently does not support modern authentication, we'll post another blog once the script is upgraded to support moden authentication.

@Sam_T The native migration methods do not support migrating public folders from one Exchange 2016 organization to another.

Iron Contributor

@Bhalchandra_Atre-MSFT 

 

Thanks for your response.  Can you tell me what the comment on this page is in reference to ?  FAQ: Public folders | Microsoft Docs  i.e.  "Currently only migrations to Exchange 2016 or Exchange 2019 in the same Active Directory forest are supported. Cross-forest migrations will be supported in the future"  ?   Can you tell me what the target CU is for that functionality ?

Iron Contributor

@Bhalchandra_Atre-MSFT 

 

Please see my last post (12-27-2020).   Can you tell me what the target CU is for that functionality ?

@Sam_T Sorry, I am not aware of any plans to support cross org migration of public folders using the native tools

Iron Contributor

@Bhalchandra_Atre-MSFT 

 

Right. I understand that you may not be personally aware at this time. Can you find out please?

 

i.e. What is the comment on this page in reference to ?  FAQ: Public folders | Microsoft Docs  i.e.  "Currently only migrations to Exchange 2016 or Exchange 2019 in the same Active Directory forest are supported. Cross-forest migrations will be supported in the future"  ?  What is the target CU for that functionality ?

Iron Contributor

@Bhalchandra_Atre-MSFT 

 

Did you see my question to you from a month ago?  i.e.

 

I understand that you may not be personally aware at this time. Can you find out please?

 

i.e. What is the comment on this page in reference to ?  FAQ: Public folders | Microsoft Docs  i.e.  "Currently only migrations to Exchange 2016 or Exchange 2019 in the same Active Directory forest are supported. Cross-forest migrations will be supported in the future"  ?  What is the target CU for that functionality ?

Brass Contributor

Question on the SourceSideValidation.ps1 script. It has now been running for almost 48 hours and it seems like it just keeps going through the same folders again. We do have a lot of public folders so I did expect it to take a fair amount of time. Is this normal/expected behavior or do I need to cancel it and try again? Environment is Exchange 2010 with around 2.6TB of data.

Brass Contributor

Following up on my previous comment about the SourceValidation.ps1 script taking a long time to run. To give others with a bigger public folder environment an idea of how long it can take, in my case it ran for almost 5 full days before finishing and producing the "SourceSideValidations.<date>.log" file. Seems like a poorly written script as the output is not friendly for converting into a CSV that you could then use to take action on the findings more easily. In my case there was just under 68k folders that needed permission changes. An example of a log entry was: "this folder \<Folder Name> permission needs to be removed for user NT User:S-*-*-**-*********-**********-**********-*****". If you look in the script you could edit the function "function checkACL($ipmFolder)" and change the output to something like this: "$errorList.Add("this folder," + $ipmFolder.Identity + ",permission needs to be removed for user," + $perm.User.DisplayName) > $null". The commas would allow you to break up the log in Excel using Text to Columns - Delimited with the comma as the delimiter. In the log it included a line of how the permission errors could be resolved (Remove-PublicFolderClientPermission <folder identity> -User <username> -Confirm:False) but in my case since it was a NT User:-S* account that represented a user or group that no longer was in our Active Directory that did not work for me. Instead I just used the script found here to roll through all public folders and remove the unresolved SIDs.

Copper Contributor

Trying to get this script to run:

$pf=Get-PublicFolder \ -Recurse -ResultSize unlimited;foreach ($i in $pf) {$s=Get-PublicFolderItemStatistics $i.EntryID;foreach ($r in $s) {if ($r -gt "38600") {$r.MessageSize,$r.PublicFolderName}}}

But I get this error:

Cannot compare "Microsoft.Exchange.Data.Storage.Management.PublicFolderItemStatistics" to "38600" because the objects are not the same type or the object
"Microsoft.Exchange.Data.Storage.Management.PublicFolderItemStatistics" does not implement "IComparable".
At line:1 char:145
+ ... mStatistics $i.EntryID;foreach ($r in $s) {if ($r -gt "38600") {$r.Me ...
+                                                    ~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], ExtendedTypeSystemException
    + FullyQualifiedErrorId : PSObjectCompareTo

Cannot compare "Microsoft.Exchange.Data.Storage.Management.PublicFolderItemStatistics" to "38600" because the objects are not the same type or the object
"Microsoft.Exchange.Data.Storage.Management.PublicFolderItemStatistics" does not implement "IComparable".

Any ideas as I can't figure out the error, unless I need to run some other variant?

Copper Contributor

Kinda worried about following through with the recommendations from the ValidateMailEnabledPublicFolders.ps1 script. There's a PublicFolder object named "Schema" in Microsoft Exchange System Objects. I'm reluctant to delete anything named "schema" in a database, but its weird seeing it with the objectClass of PublicFolder. Is this safe to delete, or have any guidance on determining if its safe to delete, or better to just continue with the migration and ignore it? 

Get-ADObject "CN=Schema,CN=Microsoft Exchange System Objects,DC=***,DC=***" | fl


DistinguishedName : CN=Schema,CN=Microsoft Exchange System Objects,DC=***,DC=***
Name              : Schema
ObjectClass       : publicFolder
ObjectGUID        : 9*******-8***-4***-8***-2***********

Any help would be appreciated. Thanks! 

Copper Contributor

@KeithPawson I tried the same snippet in my environment and think I found the issue. It has $r as an object with multiple properties, then trying to compare that entire object to 38600. It should be $r.MessageSize -gt "38600" but even that is a little off because the MessageSize property is a string something like this "55.56 MB (58,263,782 bytes)." Here's another snippet that's a little more drawn out with more explanatory variable names. It will also take the MessageSize property, get only the number of bytes, convert those bytes to KB, and then try the comparison operation against "38600". This worked for me in my environment

 

$collection = @()
$publicFolders = Get-PublicFolder \ -Recurse -ResultSize unlimited

$publicFolders | ForEach-Object {
    $pf = $_
    $pfItemStats = Get-PublicFolderItemStatistics -Identity $pf.EntryID
    
    $pfItemStats | ForEach-Object {
        $messageSizeBytes = if ($_.MessageSize -match '.+\((.+) bytes\)') { $Matches[1].Replace(',', '') }
        $messageSizeKB = $messageSizeBytes / 1KB

        if ($messageSizeKB -gt '38600') {
            $itemInfo = $_ | Select-Object @{n = 'PublicFolderName'; e = { $pf.Identity } }, ItemType, Subject, MessageSize, HasAttachments, CreationTime, LastModificationTime
            $collection += $itemInfo
            $itemInfo
        }
    }
}

$collection | Format-Table -AutoSize

Edit: revised this so the PublicFolderName is the actual name of the public folder instead of the EntryId for the public folder. 

Copper Contributor

Thanks @alex-franco I ended up pressing on with the other checks and not running that script, can't believe no one else has reported this here. Anyway I've now successfully migrated into 365, it was not easy and certainly requires more than just the above.

 

Sorry I don't have an answer about your ValidateMailEnabledPublicFolders.ps1 question - when I ran that script I just had many permission issues 3500 in fact. However this post and script helped me resolve that issue https://practical365.com/correcting-public-folder-permissions-before-an-office-365-migration/ I know this is not related to your question, but just in case you get permission errors as well.

Copper Contributor

Hello,

 

When running the "Export-ModernPublicFolderStatistics.ps1" script is there any way to exclude the Dumpster? It just errors out on me with what appears to be a timeout issue.

 

[PS] C:\temp\pfmigrationEXO>.\Export-ModernPublicFolderStatistics.ps1 ex2016-pfstats.csv
[6/1/2022 6:51:07 AM] Enumerating folders under IPM_SUBTREE...
The process failed to get the correct properties.
+ CategoryInfo : NotSpecified: (:) [Get-PublicFolder], ConnectionFailedTransientException
+ FullyQualifiedErrorId : [Server=SO-SVC-MBX1,RequestId=e9c69e36-87ad-4b05-b88d-049828054919,TimeStamp=6/1/2022 12:14:44 PM] [FailureCategory=Cmdlet-ConnectionF
ailedTransientException] 69D20F2D,Microsoft.Exchange.Management.MapiTasks.GetPublicFolder
+ PSComputerName : so-svc-mbx1.pharms-services.com

[6/1/2022 8:26:36 AM] Enumerating folders under IPM_SUBTREE completed...47344 folders found.
[6/1/2022 8:26:36 AM] Enumerating folders under NON_IPM_SUBTREE...

 

So I never get pass this step to migrate to EXO. Any suggestions?

@JStevens5591 You can skip the Export-ModernPublicFolderStatistics.ps1 altogether, its not a mandatory step. However, I suggest you take a look at non_ipm_subtree permissions and fix the issue, else the actual migration also may fail

Copper Contributor

@Bhalchandra_Atre-MSFT  Thanks for the information, so I can move onto the creation of the FolderToMailboxMapping CSV by running the "ModernPublicFolderToMailboxMapGenerator.ps1" script? Not sure what I would use as the stats.csv file this script would need to generate the mapping file.

Copper Contributor

I'm running the suggested script to get the PF Item size. 

 

$pf=Get-PublicFolder "\MY\Public folder\Name\Here\" -Recurse -ResultSize unlimited;foreach ($i in $pf) {$s=Get-PublicFolderItemStatistics $i.EntryID;foreach ($r in $s) {if ($r -gt "38600") {$r.MessageSize,$r.PublicFolderName}}}

 

Here's the Output.   What am I doing wrong?  

 

Cannot compare "Microsoft.Exchange.Data.Storage.Management.PublicFolderItemStatistics" to "38600" because the objects are not the same type or the object "Microsoft.Exchange.Data.Storage.Management.PublicFolderItemStatistics" does not
implement "IComparable".
At line:1 char:211
+ ... mStatistics $i.EntryID;foreach ($r in $s) {if ($r -gt "38600") {$r.Me ...
+ ~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], ExtendedTypeSystemException
+ FullyQualifiedErrorId : PSObjectCompareTo

 

Copper Contributor

@Bob Stahly, take a look at my comment from June 15 (https://techcommunity.microsoft.com/t5/exchange-team-blog/best-practices-for-public-folder-preparati...). That should explain why it isn't working and the script listed there should work for you.

Copper Contributor

@Bhalchandra_Atre-MSFT Thanks for the post. I'm wondering how i can change the default public folder mailbox in which new public folders are created after the migration.

On my on-prem servers this is always the primary hierarchy and since this mailbox should stay empty content-wise i wanna know how to change the default in Exchange Online. Or is the default value here already changed to the second/third/... public folder mailbox?

 

Thank you.

Copper Contributor

Hi,  With basic auth now being blocked (  I presume we cant extended this again)  we can no longer migrate public folders from Exchange 2010 to Exchange online : Use batch migration to migrate legacy public folders to Microsoft 365 or Office 365 | Microsoft Learn

 

This means we will need to migrate them to a newer version of exchange before performing the migration to Exchange online ? 

 

Thanks

Copper Contributor

@wharts245 -- You still can. Look into using a certificate based auth and tie that to an App ID in Azure. You will need to make sure the underlying user attached to this has the correct permissions placed for the items you intend to use. I have an entire setup doing this without issue for many things unattended. You can do 5 concurrent connections per Cert. I look at it now as Cert management vs Session management in the past.. 

@wharts245 The Exchange 2010 specific sync-mailpublicfolder script is updated to support modern auth and works fine. Follow the steps from https://aka.ms/LegacyPFToEXO article.

Copper Contributor

Hi @alex-franco ,

I've tried your script in my environment to check public folder item size at source and the script didn't return anything.

Does that mean that I don't have any public folder item size over 35 MB in my environment and I'm ready to go to the next step/check in the process of preparing/cleaning for migration to O365?  

Copper Contributor

Hi @mkoprivnj 

 

That would be my assumption, but try adjusting the message size threshold to something lower like 5,120 just to make sure it is getting emails and checking them. 

Copper Contributor

Hi there,

 

How to test eforms in organizational library before migrating Exchange 2010 Public Folder to Exchange 2016 Public folder? Will that affect the production Exchange 2010 Public Folder if I create an organizational library in Exchange 2016?

 

Thanks

Gary L.

@glee2 The organization forms library is migrated to E2016 as part of migration. Also, if you're using native migration method, the E2016 PF's will be locked at the time of migration. 

Copper Contributor

@Bhalchandra_Atre-MSFT Do you mean I can create a test Public Folder mailbox in Exchange 2016 to test my forms?

 

Thanks!

Co-Authors
Version history
Last update:
‎Jan 27 2021 09:14 AM
Updated by: