Sintomas
Considere o seguinte cenário:
-
Executar uma Alterar índice... ONLINE consulta de 2012 do Microsoft SQL Server ou SQL Server 2014.
-
Esta consulta é cancelada devido a um impasse ou uma acção iniciada pelo utilizador, como executar um comando de kill ou cancelar a consulta.
Neste cenário, quaisquer operações de LMG tem de utilizar os metadados do índice estão bloqueadas ou demoram muito tempo para ser concluída.
Além disso, poderá detectar os seguintes sintomas:
-
Valores elevados para a PWAIT_MD_RELATION_CACHE ou MD_LAZYCACHE_RWLOCK Aguarde tipo quando consulta as vistas de gestão dinâmica sys.dm_os_wait_stats e sys.dm_exec_requests (das DMV)
-
Valores elevados para SOS_RW Aguarde tipo quando consulta o sys.dm_os_spinlock_stats das DMV
Este problema é normalmente observado como um combóio de bloqueio que ocorre quando cada nova consulta LMG lentamente limpa os objectos de sincronização. Devido à natureza de espera dos objectos de sincronização, a utilização da CPU está normalmente limitada.
Resolução
Informações de actualização cumulativa
O problema foi corrigido pela primeira vez na actualização cumulativa do SQL Server.
Actualização cumulativa 1 para o SQL Server 2014/en-us/help/2931693
Actualização cumulativa 9 para SQL Server 2012 SP1/en-us/help/2931078
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 na anterior actualização cumulativa. Verifique as actualizações cumulativas mais recentes para o SQL Server:
Informações sobre correção
Existe uma correção suportada pela Microsoft. No entanto, esta correção destina-se apenas a corrigir o problema descrito neste artigo. Aplique esta correcção apenas em sistemas que tenham este problema específico.
Se a correção está disponível para transferência, existe uma secção de "Transferência de Correção Disponível" na parte superior deste artigo da Base de Dados de Conhecimento. Se esta secção não for apresentado, submeta um pedido de suporte e serviço de cliente Microsoft para obter a correcção.
Nota Se ocorrerem problemas adicionais ou se for necessária a resolução de problemas, poderá ter de criar um pedido de assistência separado. Os custos de normais do suporte serão aplicados a perguntas de suporte adicionais e os problemas incluídos nesta correcção específica. Para uma lista completa dos números de telefone de suporte e serviço de cliente da Microsoft ou para criar um pedido de assistência separado, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=supportNota O formulário "Transferência de correcção disponível" apresenta os idiomas nos quais a correcção está disponível. Se não visualizar o seu idioma, é porque uma correcção não está disponível para esse idioma.
Importante Depois de aplicar esta correcção, a Alterar índice... ONLINE consulta pode ser cancelada sem diminuir o desempenho do SQL Server.
Solução alternativa
Para contornar este problema, pode esvaziar a entrada de metadados para impedir que as combóio de bloqueio e potenciais ciclos de recompile diminuir o desempenho da consulta. Para tal, utilize um dos seguintes métodos para ajudar a limpar a entrada de metadados:
-
Reinicie a instância do SQL Server 2012 ou SQL Server 2014.
-
Colocar a base de dados problemático em estado offline e, em seguida, colocá-lo online novamente.
Estado
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".