Exchange 2010 message routing to public folders stuck

If you have two or more public folders databases in Exchange 2010 servers then you stosmailiprobably think that you have HA for public folders.

All of your public folders are replicated between those public folders databases and you think that when you will lost one server with PF database then you have another one and you wll have no problem with public folders.

If you think that then you are wrong !

In mailbox database you can specify public folder database for this mailbox database.

But if you shutdown one Exchange 2010 server with Public Folders database like your default server with PF’s then you will see that messages sent to mail enabled public folders stuck at the delivery queue on each Hub Transport server.
When you check this queue you will see that all of those messages are trying to get to public folder database on shutdown server, they are not redirected to available public folders database on another server.

So how to resolve this problem ?

First Microsoft recommend to install at least RU4 for Exchange 2010 SP2.
But this won’t help to resolve this problem.

You need to do something more.

In C:\Program Files\Microsoft\Exchange Server\V14\Bin directory find file:


Edit it and manually add the following information to EdgeTransport.exe.config file:

<add key="SmartRoutingForPublicFoldersEnabled" value="True" />

Now save and restart Exchange Transport Service.

You need to do this on each Exchange 2010 Hub Transport server.

Now you will get fully redundant environment with Public Folders.

If one server with public folders database is missing then message are routed to another server with public folders database.

If this server will be missing for long time then remember to change default Public Folder database in mailbox database settings.


Exchange 2010 GRT restore error cannot connect to CAS Array

If you have the Microsoft Exchange 2010 DAG and CAS Array, and you want to recover the granular backup with Symantec NetBackup. You can meet this error:


2013-02-08 09:54:11 - Error bpbrm(pid=7200) bpcd on casarray.domain.local exited with status 48: client hostname could not be found
2013-02-08 09:54:11 - Info tar32(pid=0) done. status: 48: client hostname could not be found    
2013-02-08 09:54:11 - Error bpbrm(pid=7200) client restore EXIT STATUS 48: -Your data has been truncated.




Error bpbrm (pid=4046) from client <cas array name>: ERR - unable to create object for restore: \\dagname\Microsoft Information Store\Mail Store\Database\User, name [nuser], rai error = 6
Error bpbrm (pid=4046) client restore EXIT STATUS 5: the restore failed to recover the requested files
From the detailed status of the job in the Activity Monitor:
Error bpbrm (pid=4046) cannot connect to <cas array name>, Operation now in progress (150)
Error bpbrm (pid=4046) client restore EXIT STATUS 58: can't connect to client

Continue reading

Microsoft Exchange and Microsoft Outlook Standards Documentation

On Microsoft Download Website you can find new version of documentation describing Microsoft Exchange and Microsoft Outlook standards.




This documentation describes how Microsoft Exchange and Microsoft Outlook support industry messaging standards.

You will find informations about iCalendar, IMAP (Internet message Access Protocol), POP3 (Post Office Protocol).

You can download this documentation in one .zip file (3,8MB):


iOS 6.1 and Exchange 2010 apid growth in transaction logs, CPU use, and memory consumption KB2814847

Finally Microsoft published article about problems with iOS 6.1 and Microsoft Exchange Server.


When user with mobile devices with iOS 6.1 syncs mailbox Microsoft Exchange Server resources are consumed, transaction logs growth becomes excessive, memory and CPU use may increase significantly,a nd server performance is affected.

You can read about it here:

Rapid growth in transaction logs, CPU use, and memory consumption in Exchange Server 2010 when a user syncs a mailbox by using an iOS 6.1-based device


Right now, Apple and Microsoft are investigating this issue. When they find any fix, it will be published as soon as it will becomes available.

If you have such problems in your Exchange environment you should open case with Apple Support.

Now Microsoft recommend only Workarounds:

Continue reading

Devices with iOS 6.1 cause Exchange excessive transaction log growth

apple_wormNew upgrade for Apple devices like IPhone or IPad to iOS 6.1 can couse Exchange Admins headache.

With new version of iOS (iOS 6.1) we have new problems, users connecting to Microsoft Exchange mailboxes using mobile devices with iOS 6.1 can generate excessive transaction logs.

This is caused by syncing mail and calendar services, devices with iOS 6.1 seemed to go into a loop and ended up by generating some 50GB of transaction logs.

This situation can be dangerous for Microsoft Exchange server, because when free space for transaction logs will end, then Exchange will dismount mailbox database.

Upgrading Apple devices to new iOS to fast is not recommended.

Continue reading

Exchange 2010 remove disabled users from distribution group

To keep Exchange Distribution Groups in order, we recommend to “clean” members of those groups.

We should remove all disabled users from distribution groups.

When we have a lot of Distribution Group we can use powershell script like below to do this.

This script gets all Distribution Groups from Exchange Organization, then will check every group for users which are disabled and they have Active Directory account in specified OU.

This script will also export all informations to a .csv file, where you can find following informations:


  • Name of distribution group
  • user DisplayName
  • SamAccountName
  • path in Active Directory to user account

Continue reading

Exchange 2010 how to control Mailbox Database Provisioning


With previous versions of Microsoft Exchange (2007 and 2003) when we created mailbox we had to specify mailbox database for this mailbox.

In Microsoft Exchange 2010 during mailbox creating we can let exchange to choose the database for new mailbox, or we have to select option that we want to select mailbox database.

This feature is called Automatic Mailbox Distribution – this feature allow Exchange to choose mailbox database for newly created mailbox if we don’t specify mailbox database.

By default in Microsoft Exchange 2010 all mailbox databases are enabled for provisioning, but we can disable them by setting mailbox database parameters IsExcludedFromProvisioning or IsSuspendedFromProvisioning.

IsExcludedFromProvisioning – we should use this setting to permanently exlude mailbox database from automatic mailbox distribution

IsSuspendedFromProvisioning - we should use this setting to temporarily exclude mailbox database from automatic mailbox distribution.

To check provisioning settings for mailbox databases we can use:

Get-MailboxDatabase | select name, *provisioning

Continue reading

Exchange 2010 remove mobile device Error The ActiveSyncDevice Cannot be Found

When you are trying to remove or wipe mobile device connected to mailbox, you can get error like below:

The ActiveSyncDevice Cannot be Found

You will get this error when you are trying to remove mobile device which were connected to user mailbox, and after user account was moved to other OU in Active Directory.

It’s caused because EMC can’t find “path” to old mobile device.

You can easly check this using two powershell commands:
If you run CMDlet Get-ActiveSyncDeviceStatistics for some mailbox like below:

Get-ActiveSyncDeviceStatistics -mailbox JSmith | select DeviceId, Identity

you will get:

DeviceID                 Identity
--------                 --------
androidc1640524549       domain.local/Users/Test1/Smith John/.....
androidc2040902280       domain.local/Users/Test2/Smith John/.....

next try to run CMDlet Get-ActiveSyncDevice for the same mailbox:

Get-ActiveSyncDevice -Mailbox JSmith | select DeviceId, Identity

you will get:

DeviceID                 Identity
--------                 --------
androidc1640524549       domain.local/Users/Test2/Smith John/.....
androidc2040902280       domain.local/Users/Test2/Smith John/.....

Continue reading

Exchange DAG check status using powershell

When we want to check DAG (Database Availability Groups) status we should use two below powershell CMDlet’s:


Get-MailboxDatabaseCopyStatus will check and show status of all mailbox databases in all the DAG’s in Microsoft Exchange environment.

Test-ReplicationHealth check all aspects of replication and replay, or to provide status for a specific Mailbox server in a database availability group (DAG).

To check copy status of all mailbox databases we should use:

(Get-DatabaseAvailabilityGroup) | ForEach {$_.Servers | ForEach {Get-MailboxDatabaseCopyStatus -Server $_}}

Continue reading

Exchange 2010 Public Folders Report

When you use Public Folders in Microsoft Exchange 2010 environment it’s good to know what kind of folders you have, what is size of those folders.

We can use script AggregatePFData.ps1, which you can find in Exchange 2010 installation directory like below:

C:\Program Files\Microsoft\Exchange Server\V14\Scripts


With this script you can easly get information about Public Folders reside on Exchange 2010 server.

You will get informations like below:

  • Identity
  • Owner
  • ItemTypes
  • FolderType
  • MailEnabled
  • HasModerator
  • HasRules
  • ItemCount
  • TotalItemSize
  • LastUserAccessTime
  • LastUserModificationTime

Continue reading