segunda-feira, 19 de janeiro de 2015

Erro 0x80070003 ao executar Restore-SPSite

Na execução de Restore-SPSite para restaurar nackup de um site em outro servidor ocorreu o serguinte erro:

Restore-SPSite : <nativehr>0x80070003</nativehr><nativestack></nativestack>

No log do SharePoint, procurando pelo nome do arquivo de backup, encontrei o seguinte erro:

Could not deserialize site from C:\TEMP\arquivo_backup.bak . Microsoft.SharePoint.SPException: Schema version of backup 15.0.4649.1000 does not match current schema version 15.0.4569.1000    

Causa do erro é que o servidor de origem está com versão do SharePoint (15.0.4649.1000) mais atual que o servidor de destino (15.0.4569.1000).

Como resolver:
  1. Verificar qual o update/service pack deve ser instalado. Em http://blogs.technet.com/b/steve_chen/archive/2013/03/26/sharepoint-2013-build-numbers-and-cu-39-s.aspx?pi13610=3#Build há uma tabela listando as atualizações, números de versão e links para download dos mesmos.
  2. Baixar e instalar a atualização.
  3. Executar o "SharePoint Product and Configuration Wizard", sem mudar nada, ou o número de versão não será atualizado. 
Nem sempre este último passo é necessário; para verificar, rode o seguinte em uma janela SharePoint Management Shell: 
(Get-SPServer -Identity nome_servidor).NeedsUpgrade

Se o retorno for "True", o Wizard deve ser executado. Confira o resultado executando

(Get-SPFarm).BuildNumber

Se o número de versão não for o esperado após o upgrade e execução do Wizard, dê um boot no servidor e cheque novamente.