|Modern public folders||Public folder architecture and deployment in Exchange Online and Exchange on-premises versions at or newer than Exchange Server 2013. In this architecture, public folders are stored in specialized mailboxes, called public folder mailboxes.|
|Public folder hierarchy||The logical structure/skeleton of public folders and associated properties as well as permissions.|
|Public folder mailbox||A special type of mailbox that is used to store public folder content and public folder hierarchy for modern public folders.|
|Public folder content||The actual data stored within public folders.|
|Primary hierarchy public folder mailbox||The public folder mailbox that hosts writable copy of the public folder hierarchy. The first public folder mailbox created in an Exchange Organization is the primary hierarchy mailbox. There is currently no supported way to transfer this functionality to another mailbox.|
|Secondary hierarchy public folder mailbox||All other public folder mailboxes in an Exchange organization, except the primary hierarchy, which store read-only copy of the public folder hierarchy.|
|Hierarchy synchronization||The process of copying the public folder hierarchy between public folder mailboxes. The hierarchy replication is always from primary hierarchy public folder mailbox (which contains the only writeable copy of the hierarchy) to secondary hierarchy mailboxes.|
|Public folder content mailbox||The public folder mailbox storing the actual content of a public folder. In modern public folders, there is only one copy of content.|
|Hierarchy mailbox||Any public folder mailbox that is enabled to serve the hierarchy information to clients is referred as a hierarchy mailbox.|
|Full synchronization||The process of synchronizing entire hierarchy to secondary public folder mailboxes. Note that this is a hierarchy only synchronization.|
|Incremental synchronization||The process in which only changes made in hierarchy, after last sync, are synchronized to secondary hierarchy PF mailboxes.|
|Primary||Never||Primary is the master of the hierarchy; it does not pull from anywhere else|
|Secondary with users connected||15 minutes||At least once every 15 minutes as long as there are client connections to the mailbox|
|Secondary with no user connections||24 hours||All secondary mailboxes are synced once daily.|
Get-DynamicDistributionGroup -IncludeSystemObjects pub*Secondary mailboxes will use both modes of sync, pull mode for initial full sync and push mode for incremental hierarchy sync, depending on the sync state they are in. The first sync is performed using pull mode, after that, they will not contact primary mailbox repeatedly for incremental syncs. Instead, they wait for the hierarchy sync notification email and apply the hierarchy changes once the email is received. If the secondary hierarchy mailbox doesn’t receive a push notification message within 10 minutes, it will fall back to pull mode and perform the incremental sync by contacting the Primary mailbox. Secondary mailboxes will also use the pull mode if an administrator triggers hierarchy sync.
Set-Mailbox -PublicFolder epf1 -IsExcludedFromServingHierarchy $TrueAn admin can override the system assignment by using this command:
Set-Mailbox <username> -DefaultPublicFolderMailbox <PFMailboxName>Example:
Set-Mailbox cloud1 -DefaultPublicFolderMailbox epf1The public folder mailbox serving hierarchy for the user can be found using this command:
Get-Mailbox |ft name,DefaultPublicFolderMailbox,EffectivePublicFolderMailboxThe admin assigned mailboxes appear under “DefaultPublicFolderMailbox”; whereas the system assigned PF mailbox will be displayed under “EffectivePublicFolderMailbox” and DefaultPublicFolderMailbox will be blank. For larger deployments, avoid manually assigning DefaultPublicFolderMailbox on users, as it may overload the assigned PF mailbox with lots of concurrent connections. As we learned earlier, the system assigns DefaultPublicFolderMailbox on users in such a way that connections are load balanced between public folder mailboxes available for serving hierarchy. Follow the best practices guidelines here for public folder mailbox placement and assignment.
Get-Mailbox -PublicFolder |ft Name,IsHierarchyReady
Get-PublicFolderMailboxDiagnostics <pfmailboxname_notreceiving_hierarchy> -IncludeHierarchyInfoHere are some other ways to view data; To compare the hierarchy between PF mailboxes
$P=Get-PublicFolderMailboxDiagnostics <Primary_pfmailboxname> -IncludeHierarchyInfo
$S=Get-PublicFolderMailboxDiagnostics <pfmailboxname_notreceiving_hierarchy> -IncludeHierarchyInfo
$S.AssistantInfo.LastAttemptedSyncTime.LocalTimeThis command tells you the last time sync failed; a gibberish value (that’s a technical term now!) indicates sync has never failed:
$s.AssistantInfo.LastFailedSyncTime.LocalTimeThe following command will give you a detailed failure message from the last sync failure, a blank output indicates sync has never failed:
$s.AssistantInfo.LastSyncFailureYou can explore the other values of AssistantInfo, SyncInfo & HierarchyInfo blocks. In case the need arises to contact Microsoft Support for assistance, you should export the report to XML format and send it along.
Get-PublicFolderMailboxDiagnostics <pf mailbox failing to sync> -IncludeHierarchyInfo |Export-Clixml epf2.xml
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.