In this case, the customer was having to export mailboxes to PST regularly. With a couple of large mailboxes (both over 5 GB+) the exports were failing.
When attempting to export larger mailboxes to PST using New-MailboxExportRequest, the process would appear to hang and then later fail. The problem was occurring on an intermittent basis, but with two very large mailboxes (5 GB+), the process was having trouble completing at all.
The error code being seen was 0x80040115, which translates to MAPI_E_NETWORK_ERROR. When we see this error, it normally indicates a problem with connection to one of the stores involved in the process.
In this case, the suspicion was that the connection to the PST was the issue, since the PST was being accessed across the network. The PST was being put in a share on the Windows 7 workstation on which the Exchange Management Shell (EMS) was being used to run the command.
The main question that needed to be answered in the process was, "What do we need to do for the PST to be on the same machine that the export process is running on so that it does not need to go over the network?"
To answer that, we needed to look at how the export process runs:
1) In Exchange 2010, your PowerShell operations are remote and are always being executed on an Exchange server; they are not executed on the machine running the Shell, unless you are on the Exchange Server and the shell has connected to the machine you are on. So, even if you are running the EMS on a workstation, it actually connects to one of your Exchange servers, and all commands are executed on that server.
2) The MailboxExportRequest uses the Mailbox Replication Service (MRS), just like a Mailbox Move does. This means that any CAS server running the MRS service, which by default is all CAS servers, could be the CAS server to run the export. We can specify a specific CAS to use with the -mrsserver switch in our New-MailboxExportRequest command.
So, we did 2 things:
1) We created a folder/share on CAS server 1, and gave the Exchange Trusted Subsystem Read/Write access to the share as directed in http://technet.microsoft.com/en-us/library/ff607299.aspx.
2) In our command we specified the new share as our file path, and also specified CAS 1 in the -MRSServer setting in our New-MailboxExportRequest command (i.e. New-MailboxExportRequest -Mailbox user1 -FilePath “\\CAS1\PSTFileShare\user1.pst” -MRSServer CAS1.domain.com).
The Mailbox export kicked off and we saw a much higher transfer rate than the customer had seen with any prior exports, and we expected to have a much better chance of success, since the PST was now on the same machine as the MRS and was not going across the network.
The customer later informed me that the export of both very large mailboxes was successful, and was done within hours, whereas it had previously run for more than a day before finally failing.
-MRSServer part is actully very good trick !!!!