Monday, November 22, 2010

DPM 2010 Item level restore error -- Index out of Bounds

Quick Description:  DPM 2010 item level restore against SharePoint 2010 fails with error "Index was outside the bounds of the array" .

Multiple SharePoint 2010/Windows 2008 R2 web front ends/application servers
SQL Server 2008 R2 back end
DPM 2010 is protecting a SharePoint 2010 farm with Item Level Restore configured and green.
Additional SQL 2008 R2 utility server for the unattached content database restore

In the DPM console, the error below is reported.
    DPM was unable to export the item YourItemName from the content database YourContentDatabase. Exception Message = Index was outside the bounds of the array.. (ID 32017 Details: Unknown error (0x80131508) (0x80131508))
In the DPM Client Logs on the target Web Front End (default location C:\Program Files\Microsoft Data Protection Manager\DPM\Temp\WssCmdletsWrapperCurr.ErrLog) the error below is reported.
06FC    1AB4    date    Time    09    AppAssert.cs(114)    WARNING    Nearest Site Url should not be null or Empty
06FC    1AB4    date    Time    31    WSSCmdlets.cs(450)    WARNING    Caught Exception while trying to export Url [ItemRestoreURL] to File [temporarylocation\DPM_GUID\cmp\].
This error appears to occur when more than one of the Central Administration site are running in the farm.
In the Central Administration site, under System Settings, and Services on Server, check all servers in the farm for the Central Administration site, and temporarily stop the Central Administration site on all but the server listed in DPM.
I can reliably reproduce this error on 3 SharePoint farms by starting the Central Administration site on more than one server.  This, however, may not be the only condition that causes this error, I'm curious whether this is the only cause of the error, so please let me know if you run into the error and multiple Central Administration sites is not the cause.

Other Things to Check:
  • Check that the account you used to register your farm with DPM is, in fact, the Farm Account.  
    • In Central Administration go to Service Accounts.  In the Credential Management drop down select Farm Account, and verify you're using the account specified here.
      • DPM will let you build the replica with the content account, and the replica will look healthy until you go to restore and it fails with an Access Denied error.
      • To fix this you need to remove the replica from protection (I believe you can retain the protected data), re-register the servers with DPM, and re-create the protection group.  If you retained the protected data, you will need to perform a consistency check.
  • Although you can register all servers with DPM (and I do, because I worry about the recovery scenario if you lose the server that has registered the replica), the DPM server may complain that the Sharepoint VSS writer is running on multiple servers.  
    • It may be necessary to temporarily stop the SharePoint VSS writer on the SharePoint servers which do not own the replica in DPM.



  1. I just did a test to recover a deleted list. It worked but the "Created By" and "Modified By" information were replaced with System Account. Not Good.

  2. Yikes, that's really not good. I'm out of the DPM game currently, but I'll ask the guy who took over my old job to see if he's getting the same issue.