CORRECÇÃO: O bloqueio não detectado ocorre ao proprietário de bloqueio está aguardando CXPACKET

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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 293232
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
BUG #: 352575, 352695 (SHILOH)
Sintomas
Consultas paralelas podem enfrentar um deadlock não detectado quando o proprietário de bloqueio de contexto de execução (EC) está aguardando um CXPACKET.

Para que o bloqueio ocorra você deve ter dois spids e cada spid deve estar executando uma consulta paralela.

A saída sysprocesses mostra vários ECs (trabalhando em nome de um único spid ) com alguns aguardando bloqueios e outros aguardando CXPACKET.

O padrão é que nenhuma correlação direta de EC de qualquer spid resulta em um deadlock de garçom bloqueio padrão. Cada serviço de bloqueio está bloqueado por um proprietário aguardando um recurso CXPACKET. Você pode usar as informações coletadas de uma consulta da tabela de sistema syslockinfo para verificar esse padrão.

Para determinar se o SQL Server está encontrando o problema, execute essas etapas:
  1. Executar uma "SELECT *" consulta da tabela de sistema sysprocesses e, em seguida, executar uma "SELECT *" consulta de tabela do sistema syslockinfo .
  2. Localize um EC bloqueado que está aguardando um bloqueio.
  3. Pesquise a saída para ver quem possui o bloqueio.
  4. Determine se o proprietário EC está aguardando um CXPACKET.
  5. Repita as etapas 1 a 4 para todos os ECs do suspeito dois spids .
O padrão deve ser todos os proprietários bloqueio de bloqueio que estão aguardando em uma CXPACKET.
Resolução
Para resolver esse problema, obtenha o service pack mais recente para o SQL Server 2000. Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
290211INF: Como obter o Service Pack mais recente do SQL Server 2000

Hotfix

A versão em inglês dessa correção deve ter os seguintes atributos de arquivo ou posteriores:
   File name   Platform   --------------------   s80263i.exe INTEL				
Observação : devido a dependências do arquivo, o hotfix mais recente ou o recurso que contém os arquivos anteriores pode também conter arquivos adicionais.
Como Contornar
Para resolver a situação de deadlock, use um:
  • Um tempo limite da consulta.

    - ou -

  • Um comando Transact-SQL KILL.
Situação
A Microsoft confirmou que este é um problema no SQL Server 2000. Esse problema foi corrigido primeiro no SQL Server 2000 Service Pack 1.

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 293232 - Última Revisão: 12/06/2015 01:31:33 - Revisão: 3.1

Microsoft SQL Server 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbbug kbfix kbqfe kbsqlserv2000sp1fix KB293232 KbMtpt
Comentários