Recebe um deadlock no Commerce Server 2002 no disparador catalogproducts_upd_tr

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: 828524
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sintomas
Quando você atualizar ou excluir itens do catálogo por meio de programação no Microsoft Commerce Server 2002, você pode perceber que seu aplicativo não está respondendo. Investigação adicional indica que ocorreu um bloqueio no Microsoft SQL Server. Em um deadlock, vários threads não podem continuar porque eles estão aguardando em um conjunto de recursos que são mantidas por si ou que são mantidos por outros threads.
Causa
Catálogo tabelas têm um disparador que é chamado catalogproducts_upd_tr. Esse disparador tem uma seção que atualiza as informações de catálogo global com uma data em que o catálogo foi atualizado pela última vez. Esse comportamento ocorre dá suporte ao método DeltaExportXML . Com o método DeltaExportXML , você pode exportar apenas as seções atualizadas do catálogo.
Resolução
Para resolver esse comportamento, edite o disparador name _catalogproducts_upd_tr catálogo, onde name é o nome do catálogo. Em seguida, remova as seções que são marcadas com chaves ("{}"):
CREATE TRIGGER [name_catalogproducts_upd_tr] ON [name_catalogproducts] FOR UPDATEASBEGINSET NOCOUNT ONUPDATE [Ad_catalogproducts]SET LastModified=getdate()from [Ad_catalogproducts] P, INSERTED Iwhere P.oid = I.oid {UPDATE Catalogglobal}{SET ProductTableUpdated = getdate()}{Where catalogname = N'name' }END
Situação
Esse comportamento é por design.

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 828524 - Última Revisão: 12/08/2015 04:42:38 - Revisão: 1.1

Microsoft Commerce Server 2002 Standard Edition, Microsoft Commerce Server 2002 Service Pack 1, Microsoft Commerce Server 2002 Service Pack 2, Microsoft Commerce Server 2002 Service Pack 3

  • kbnosurvey kbarchive kbmt kbprb KB828524 KbMtpt
Comentários