Sintomas
Suponha que você consulta uma coluna Binary Large Object (BLOB) no Microsoft SQL Server 2008 R2 ou no Microsoft SQL Server 2012 em um computador com várias CPUs. A consulta usa a dica NOLOCK . Nessa situação, você enfrenta alta utilização da CPU no computador.ObservaçãoEsse problema provavelmente ocorrerá se o computador tiver 16 ou mais CPUs instaladas.
Causa
Esse problema ocorre porque um algoritmo de retirada de spinlock não é eficiente.
Resolução
Informações sobre a atualização cumulativa
Atualização cumulativa 2 para SQL Server 2012 SP1
A correção para esse problema foi lançada pela primeira vez na atualização cumulativa 2. Para obter mais informações sobre como obter este pacote de atualização cumulativa do SQL Server 2012 SP1, clique no número abaixo para ler o artigo na base de dados de conhecimento da Microsoft:
2790947 Pacote de atualizações cumulativas 2 para SQL Server 2012 Service Pack 1Observação Como as compilações são cumulativas, 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 do SQL Server 2012 SP1. Recomendamos que você considere a aplicação do lançamento de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler os artigos na Base de Dados de Conhecimento Microsoft:
2772858 As compilações do SQL Server 2012 lançadas após o lançamento do SQL Server 2012 Service Pack 1
Atualização cumulativa 5 para SQL Server 2012
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 este pacote de atualização cumulativa do SQL Server 2012, clique no número abaixo para ler o artigo na base de dados de conhecimento da Microsoft:
2777772 Pacote de atualizações cumulativas 5 para SQL Server 2012Observação Como as compilações são cumulativas, 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 do SQL Server 2012 Fix. Recomendamos que você considere a aplicação do lançamento de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler os artigos na Base de Dados de Conhecimento Microsoft:
2692828 As compilações do SQL Server 2012 lançadas após o lançamento do SQL Server 2012
SQL Server 2008 R2 Service Pack 2
A correção para esse problema foi lançada pela primeira vez na atualização cumulativa 3. Para obter mais informações sobre como obter este pacote de atualização cumulativa do SQL Server 2008 R2 Service Pack 2, clique no número abaixo para ler o artigo na base de dados de conhecimento da Microsoft:
2754552 Pacote de atualizações cumulativas 3 para SQL Server 2008 R2 Service Pack 2Observação Como as compilações são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança incluídas no lançamento anterior do SQL Server 2008 R2 Service Pack 2. Recomendamos que você considere a aplicação do lançamento de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler os artigos na Base de Dados de Conhecimento Microsoft:
2730301 Versões do SQL Server 2008 R2 lançadas após a liberação do SQL Server 2008 R2 Service Pack 2
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".
Solução alternativa
Para contornar o problema, use um dos seguintes métodos:
-
Diminuir o tamanho da coluna de objeto grande binário.
-
Remova a dica NOLOCK da consulta.
-
Reduza o número de CPUs usadas pelo SQL Server.