Aumenta o erro 3961 quando a base de dados AlwaysOn tem CLR UDT no SQL Server 2014 ou falha de uma réplica secundária AlwaysOn

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 3042370
Sintomas

Considere o seguinte cenário:
  • Activar a funcionalidade de grupos de Disponibilidade AlwaysOn no Microsoft SQL Server 2014.
  • A base de dados AlwaysOn tem o tipo de dados definidos pelo utilizador comum runtime (CLR) de idioma (TDU). Além disso, o mesmo UDT de CLR existe mais do que uma base de dados.
  • Executar uma consulta que envolva várias bases de dados que tenham o UDT de CLR.
Neste cenário, ocorre um erro de violação de acesso a réplicas secundárias e a instância do SQL Server falha com a seguinte mensagem no registo de erros de SQL Server:
2015-02-17 13:07:36.85 spid27s a encerrar a base de dados devido a excepção 2905 durante VLR processamento na consolidação.

2015-02-17 13:07:36.85 spid27s erro: 3449, gravidade: 21, estado: 1.2015-02-17 spid27s 13:07:36.85 SQL Server tem de encerrar para recuperar uma base de dados (base de dados ID 2). A base de dados é uma base de dados do utilizador que não pode ser encerrado ou uma base de dados do sistema. Reinicie o SQL Server. Se a base de dados não conseguir recuperar após o arranque de outro, reparar ou restaurar a base de dados.
Além disso, recebe a seguinte mensagem de erro na base de dados secundária réplica e o erro não desaparecem até que reinicie o SQL Server:
Erro 3961, nível 16. o, o estado 1, linha 3
Falha na base de dados de transacção de isolamento do instantâneo»DatabaseName>' porque o objecto acedido pela instrução foi modificado por uma instrução DDL na outra transacção simultânea desde o início desta transação. Não é permitido porque os metadados não não número de versão. Uma actualização em simultâneo para metadados pode provocar uma inconsistência se misturados com isolamento de instantâneo.


Resolução

Informações sobre a actualização cumulativa

O problema foi corrigido pela primeira vez na actualização cumulativa do SQL Server.

Recomendação: Instale a actualização cumulativa mais recente para o SQL Server
Cada nova actualização cumulativa para o SQL Server contém todas as correcções e todas as correcções de segurança que foram incluídas com a anterior actualização cumulativa. Recomendamos que transfira e instale as ultimas actualizações cumulativas para o SQL Server:

Informações sobre a atualização

Para resolver este problema, aplique a actualização KB 3043788: Um pacote de actualização de correcção a pedido está disponível para SQL Server 2014.
Ponto Da Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 3042370 - Última Revisão: 06/25/2015 03:48:00 - Revisão: 3.0

Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Service Pack 1

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB3042370 KbMtpt
Comentários