KB2562812 - CORRECÇÃO: Código de erro 17065 ao rastrear um procedimento armazenado que contém um TVP se o TVP contiver uma grande quantidade de dados de texto ou de imagem no SQL Server 2008 ou no SQL Server 2008 R2

Aplica-se a
SQL Server 2008 Developer SQL Server 2008 Enterprise SQL Server 2008 Express SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Express

A Microsoft distribui correções do Microsoft SQL Server 2008 ou Microsoft SQL Server 2008 R2 como um arquivo para download. Como as correções são cumulativas, cada nova versão contém todos os hotfixes e todas as correções de segurança incluídas com a versão anterior da correção do SQL Server 2008 ou do SQL Server 2008 R2.

Sintomas

Considere o seguinte cenário:

  • Você configura um servidor vinculado no SQL Server 2008 ou no SQL Server 2008 R2.
  • Você usa o SQL Profiler para capturar eventos RPC:Completed em uma instância do SQL Server 2008 ou do SQL Server 2008 R2 no servidor vinculado.
  • Você cria um procedimento armazenado que aceita um parâmetro com valor de tabela (TVP) junto com colunas de texto ou imagem.
  • As consultas distribuídas do procedimento armazenado usam o TVP em uma transação que executa uma operação de confirmação.
  • Um aplicativo cliente executa o procedimento armazenado na instância do SQL Server e o aplicativo usa o TVP para passar uma grande quantidade de dados de texto ou de imagem para o procedimento armazenado.

Nesse cenário, você pode receber o seguinte erro no log de erros do SQL:

Observação

<Data> spid# Erro: 17065, Gravidade: 16, Estado: 1.
<Data> spid# SQL Server Declaração: Arquivo: <tmpilb.cpp>, linha = 3280 Falha Assertion = 'fFalse' Lançamento. Esse erro pode estar relacionado ao tempo. Se o erro persistir após a execução da instrução, use DBCC CHECKDB para marcar a integridade estrutural do banco de dados ou reinicie o servidor para garantir que as estruturas de dados na memória não sejam corrompidas
<Data> spid# Erro: 3624, Gravidade: 20, Estado: 1.
<Data> spid# Falha em uma marca de asserção do sistema. Verifique o log de erros do SQL Server para obter detalhes. Normalmente, uma falha de declaração é causada por um bug de software ou corrupção de dados. Para marcar se há banco de dados corrompido, considere executar DBCC CHECKDB. Se você concordou em enviar despejos para a Microsoft durante a instalação, um minidespejo será enviado para a Microsoft. Uma atualização da Microsoft pode estar disponível no Service Pack mais recente ou em um QFE do Suporte Técnico.

      

Resolução

Informações sobre a atualização cumulativa

SQL Server 2008 Service Pack 3

A correção para esse problema foi lançada pela primeira vez na Atualização Cumulativa 1 para o SQL Server 2008 Service Pack 3. Para obter mais informações sobre esse pacote de atualização cumulativa, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft:

2617146 Pacote de atualizações cumulativas 1 para o SQL Server 2008 Service Pack 3Observação: como os builds são cumulativos, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança incluídas na versão anterior de correção do SQL Server 2008. A Microsoft recomenda que você considere aplicar a versão de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo da Base de Dados de Conhecimento Microsoft:

2629969 As compilações do SQL Server 2008 lançadas após o lançamento do SQL Server 2008 Service Pack 3 Os hotfixes do Microsoft SQL Server 2008 são criados para service packs SQL Server específicos. Você deve aplicar um hotfix do SQL Server 2008 Service Pack 3 a uma instalação do SQL Server 2008 Service Pack 3. Por padrão, qualquer hotfix fornecido em um service pack do SQL Server é incluído no próximo service pack do SQL Server.

SQL Server 2008 R2

A correção para esse problema foi lançada pela primeira vez na Atualização Cumulativa 9. Para obter mais informações sobre como obter esse pacote de atualizações cumulativas para o SQL Server 2008 R2, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft:

2567713 Pacote de atualizações cumulativas 9 para SQL Server 2008 R2 Observação Como os builds são cumulativos, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança incluídas na versão anterior de correção do SQL Server 2008 R2. Recomendamos que você considere aplicar a versão de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo da Base de Dados de Conhecimento Microsoft:

981356 As compilações do SQL Server 2008 R2 lançadas após o SQL Server 2008 R2

SQL Server 2008 R2 Service Pack 1

A correção para esse problema foi lançada pela primeira vez na Atualização Cumulativa 2 para o SQL Server 2008 R2 Service Pack 1. Para obter mais informações sobre como obter esse pacote de atualizações cumulativas, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft:

2567714 Pacote de Atualização Cumulativa 2 para o SQL Server 2008 R2 Service Pack 1Observação: como os builds são cumulativos, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança incluídas na versão anterior de correção do SQL Server 2008 R2. Recomendamos que você considere aplicar a versão de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo da Base de Dados de Conhecimento Microsoft:

2567616 As compilações do SQL Server 2008 R2 lançadas após o SQL Server 2008 R2 Service Pack 1

SQL Server 2008 SP2 CU5

                
A correção para esse problema foi lançada pela primeira vez na Atualização Cumulativa 5. Para obter mais informações sobre como obter esse pacote de atualizações cumulativas para o SQL Server 2008 Service Pack 2 (SP2), clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft:

2555408 Pacote de Atualização Cumulativa 5 para o SQL Server 2008 Service Pack 2Observação: como os builds são cumulativos, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança incluídas na versão anterior de correção do SQL Server 2008 Service Pack 2. Recomendamos que você considere aplicar a versão de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo da Base de Dados de Conhecimento Microsoft:

2402659 As compilações do SQL Server 2008 lançadas após o lançamento do SQL Server 2008 Service Pack 2

Status

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Mais informações

Para obter mais informações sobre consultas distribuídas, visite o seguinte site do MSDN:

Informações gerais sobre consultas distribuídas Para obter mais informações sobre parâmetros com valor de tabela, visite o seguinte site do MSDN:

Informações gerais sobre parâmetros com valor de tabela Para obter mais informações sobre servidores vinculados, visite o seguinte site do MSDN:

Informações gerais sobre a vinculação de servidores