Artigo: 937517 - Última revisão: terça-feira, 20 de Novembro de 2007 - Revisão: 1.4

CORRECÇÃO: Mensagem de erro quando consolidar uma transacção distribuída que contém uma consulta que obtém dados de um servidor ligado em SQL Server 2005: "Gestor de transacções cancelou a transacções distribuídas"

Está disponível transferência de hotfixDisponível transferência de hotfix
Ver e solicitar transferências de hotfix
Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
N.º de bugs: 50001297 (correcção SQL)
Importante
A Microsoft distribui correcções Microsoft SQL Server 2005 como um ficheiro transferível. Uma vez que as correcções são cumulativas, cada nova versão contém todas as correcções e todas as correcções de segurança incluídas com o SQL Server 2005 anterior corrigir lançamento.

Nesta página

Expandir tudo | Reduzir tudo

Sumário

Este artigo descreve o seguinte sobre esta versão de correcção:
  • Problemas corrigidos pelo pacote de correcção
  • Pré-requisitos para instalar o pacote de correcções
  • Informações sobre se tem de reiniciar o computador depois de instalar o pacote de correcção
  • Informações sobre se o pacote de correcções é substituído por qualquer outro pacote de correcção
  • Informações sobre se terá de efectuar quaisquer alterações de registo
  • Ficheiros contidos no pacote de correcção

Sintomas

Considere o seguinte cenário. Utilize o SQL Native Client fornecedor OLE DB (SQLNCLI) no SQL Server 2005 para criar um servidor ligado. Criar uma transacção distribuída. A transacção distribuída contém uma consulta que utiliza o servidor ligado para obter dados a partir de uma tabela. Quando consolidar a transacção distribuída, poderá receber a seguinte mensagem de erro:
Msg 1206, nível de 18, estado 167, linha 3
O coordenador de transacções distribuídas Microsoft (MS DTC) ter cancelado a transacção distribuída.
Além disso, poderá receber a seguinte mensagem de erro quando executa uma consulta depois deste comportamento ocorre:
Msg 8525, nível de 16, estado 1, linha 1
Transacções distribuídas concluída. Inscrever um nesta sessão de uma nova transacção ou a transacção de NULL.
Este problema ocorre caso se verifiquem as seguintes condições:
  • Utilizar o fornecedor SQLNCLI para criar um servidor ligado entre duas instâncias do SQL Server 2005.
  • A opção XACT_ABORT é definida como activa.
  • Na transacção distribuída, tenta libertar um conjunto de linhas antes de todas as linhas no conjunto de linhas são processadas.
Nota Este problema também poderá ocorrer se chamar o método de ReleaseRows numa transacção distribuída para libertar um conjunto de linhas antes de consolidar uma transacção distribuída numa aplicação.

Causa

Este problema ocorre porque o fornecedor SQLNCLI incorrectamente envia um sinal de atenção para o servidor ligado para recuperar a transacção distribuída.

Resolução

Informações sobre a correcção

Está disponível a partir da Microsoft uma correcção suportada. No entanto, esta correcção destina-se a corrigir o problema descrito neste artigo. Aplique esta correcção apenas em sistemas que tenham este problema específico. Esta correcção poderá submetida a testes adicionais. Por conseguinte, se não estiver a ser gravemente afectado por este problema, recomendamos que aguarde pela próxima actualização de software que contenha esta correcção.

Se a correcção está disponível para transferência, existe uma secção "denominada transferência de correcção disponível" na parte superior deste artigo da base de dados de conhecimento. Se esta secção não for apresentado, contacte o serviço de cliente do Microsoft e suporte para obter a correcção.

Nota Se ocorram problemas adicionais ou se for necessária qualquer resolução de problemas, poderá ter de criar um pedido de assistência separado. Os custos normais do suporte serão aplicados a problemas adicionais e questões de suporte que não se enquadrem esta correcção específica. Para obter uma lista completa dos números de telefone do suporte de cliente do Microsoft ou para criar um pedido serviço separado, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Nota O formulário "Transferência de correcção disponível" apresenta os idiomas para a qual a correcção está disponível. Se não vir o idioma, é porque uma correcção não está disponível para esse idioma.

Pré-requisitos

Tem de ter o SQL Server 2005 Service Pack 2 (SP2) instalado para aplicar esta correcção.

Para obter mais informações sobre como obter o SQL Server 2005 Service Pack 2, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
913089  (http://support.microsoft.com/kb/913089/ ) Como obter o service pack mais recente para o SQL Server 2005

Informações sobre reinício

Não é necessário reiniciar o computador depois de aplicar esta correcção.

Informações de registo

Não é necessário alterar o registo.

Informações sobre ficheiros da correcção

Esta correcção contém apenas os ficheiros necessários para corrigir os problemas referidos neste artigo. Esta correcção não pode conter de todos os ficheiros que necessita para actualizar completamente um produto para a compilação mais recente.

A versão inglesa desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são indicadas na hora universal coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador fuso horário no item data e hora no painel de controlo.
Versão do SQL Server 2005 32 bits
Reduzir esta tabelaExpandir esta tabela
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempoPlataforma
Sqlncli.dll2005.90.3172.02,234,22425 De Maio de 200712: 32x 86
Sqlnclir.rll2005.90.1399.0205,52813-Oct-200519: 48Não aplicável
SQL Server 2005 x 64 versão
Reduzir esta tabelaExpandir esta tabela
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempoPlataforma
Sqlncli.dll2005.90.3172.02,234,22425 De Maio de 200712: 32x 86
Sqlnclir.rll2005.90.1399.0205,52813-Oct-200519: 48Não aplicável
Msvcm80.dll8.0.50727.42516,09622-Sep-200515: 27x 64
Msvcp80.dll8.0.50727.421,097,72822-Sep-200515: 28x 64
Msvcr80.dll8.0.50727.42822,78422-Sep-200515: 26x 64
Versão da arquitectura Itanium do SQL Server 2005
Reduzir esta tabelaExpandir esta tabela
Nome de ficheiroVersão do ficheiroTamanho do ficheiroDataTempoPlataforma
Sqlncli.dll2005.90.3172.02,234,22425 De Maio de 200712: 32x 86
Sqlnclir.rll2005.90.1399.0205,52813-Oct-200519: 48Não aplicável
Msvcm80.dll8.0.50727.42572,41622-Sep-200515: 29IA-64
Msvcp80.dll8.0.50727.421,385,47222-Sep-200515: 31IA-64
Msvcr80.dll8.0.50727.421,484,80022-Sep-200515: 28IA-64

Como contornar

Para impedir que o fornecedor SQLNCLI envia um sinal de atenção para o servidor, utilize o fornecedor SQLNCLI consumir totalmente quaisquer conjuntos de linhas que cria o consumidor de OLE DB.

Ponto Da Situação

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

Mais Informação

Para obter mais informações sobre o esquema de atribuição de nomes para as actualizações do SQL Server, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
822499  (http://support.microsoft.com/kb/822499/ ) Novo esquema de atribuição de nomes de ficheiros para pacotes de actualização de software do Microsoft SQL Server
Para obter mais informações sobre a terminologia de actualização de software, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
824684  (http://support.microsoft.com/kb/824684/ ) Descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft

A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL 2005 Server Workgroup
Palavras-chave: 
kbmt kbautohotfix kbexpertiseadvanced kbfix kbsql2005connect kbpubtypekc kbqfe kbhotfixserver KB937517 KbMtpt
Tradução automáticaTradução automática
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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 937517  (http://support.microsoft.com/kb/937517/en-us/ )