Sintomas
Suponha que você use a replicação Transactional no Microsoft SQL Server 2008, e há uma consulta atualização em execução na publicação. Quando você atualiza o SQL Server para o SQL Server 2012 ou o SQL Server 2014, e a consulta atualização não é distribuída antes da atualização, o agente de leitor de log pode falhar com o seguinte erro:
<Date> <Time> Publisher: {sp_replcmds de chamadas (500, 0, 0, 0, 500000)}<data> <hora> status: 0, código: 20011, texto: ' o processo não pôde executar ' sp_replcmds ' em '< nome do editor>'. '.<Date> <Time> O processo não pôde executar ' sp_replcmds ' em '<nome do editor>'.<Date> <Time> Status do agente repl: 6<data> <hora> status: 0, código: 542, texto: ' foi encontrado um valor de data/hora inválido. O valor excede ao ano 9999. '.<Date> <Time> Status: 0, código: 3621, texto: ' a instrução foi encerrada. '.<Date> <Time> Status: 0, código: 22037, texto: ' o processo não pôde executar ' sp_replcmds ' em '<nome do editor>'. '.
Mesmo que esse problema não tenha acontecido, os registros de log atualizados para instruções de atualização ainda podem ser mal interpretados pelo agente de leitor de log e o seguinte erro pode ocorrer no agente de distribuição:
515 não é possível inserir o valor nulo na coluna '<nome da coluna>', tabela '<nome da tabela>'; a coluna não permite nulos. Falha na atualização.
Observação
-
Diferentes tipos de dados e restrições podem causar um erro diferente a ser relatado e esse problema pode causar uma não-convergência.
-
O problema ocorre quando você atualiza do SQL Server 2008 ou do SQL Server 2008 R2 para o SQL Server 2012 ou o SQL Server 2014.
Resolução
Se o erro "515 não pode inserir o valor nulo na coluna"<nome da coluna>", tabela"<nome da tabela>"; a coluna não permite nulos. Falha na atualização "no agente de distribuição, reinicialize a replicação. Esse hotfix não corrige esse erro. Para evitar esse erro, você deve desabilitar o agente de leitor de log antes de atualizar, depois atualizar o caminho para essa correção e, em seguida, habilitar novamente o agente de leitor de log. o problema foi corrigido primeiro na atualização cumulativa a seguir do SQL Server.
Atualização cumulativa 2 para SQL Server 2012 SP2 /en-us/help/2983175
Atualização cumulativa 3 para SQL Server 2014 /en-us/help/2984923
Atualização cumulativa 11 para SQL Server 2012 SP1 /en-us/help/2975396
Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes do SQL Server:
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".