Erro: Reversão falhará com erros 3314 e 9001 se você inscrever-se várias conexões na mesma transação

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: 811476
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.

Sintomas
Se você inscrever-se várias conexões para bancos de dados diferentes na mesma transação, e não houver nenhuma conta de convidado, a reversão da transação pode falhar com erros 3314 e 9001. Você pode ver as mensagens seguintes no log de erro do SQL Server:

1999-10-21 15:35:11.25 spid8 Error: 3314, Severity: 21, State: 4 1999-10-21 15:35:11.25 spid8 Error while undoing logged operation in database 'Northwind'. Error at log record ID (24:368:2).. 1999-10-21 15:35:11.32 spid8 Error: 9001, Severity: 21, State: 1 1999-10-21 15:35:11.32 spid8 The log for database 'Northwind' is not available.. 1999-10-21 15:35:11.34 spid8 Error: 3314, Severity: 21, State: 2 1999-10-21 15:35:11.34 spid8 Error while undoing logged operation in database 'Northwind'. Error at log record ID (24:368:1).. 1999-10-21 15:35:21.48 spid6 Closing file d:\mssql7\DATA\northwnd.mdf. 1999-10-21 15:35:21.50 spid6 Closing file d:\mssql7\DATA\northwnd.ldf. 1999-10-21 15:35:21.51 spid6 Starting up database 'Northwind'. 1999-10-21 15:35:21.51 spid6 Opening file d:\mssql7\DATA\northwnd.mdf. 1999-10-21 15:35:21.56 spid6 Opening file d:\mssql7\DATA\northwnd.ldf. 1999-10-21 15:35:21.78 spid6 4 transactions rolled forward in database 'Northwind' (6). 1999-10-21 15:35:21.78 spid6 0 transactions rolled back in database 'Northwind' (6). 

Se você estiver usando o sinalizador de traço - y916, e você executar o rastreamento SQL Profiler, enquanto o erro é encontrado, o SQL Profiler mostra um despejo de pilha curto é semelhante à seguinte:

Short Stack Dump0x77f1d4cb Module(KERNEL32+1d4cb) (RaiseException+6a)0x005b5953 Module(sqlservr+1b5953) (ex_raise2+ec)0x00506417 Module(sqlservr+106417) (ex_raise+5f)0x00596ce2 Module(sqlservr+196ce2) (usedb+c0)0x00432d83 Module(sqlservr+32d83) (CAutoDb::FUse+31)0x00402cd5 Module(sqlservr+2cd5) (opentabid+77)0x0043134e Module(sqlservr+3134e) (IndexDelete+46)0x00431212 Module(sqlservr+31212) (XDES::UndoPageOperation+168)0x00431ceb Module(sqlservr+31ceb) (XDES::RollbackToLsn+22a)0x00430560 Module(sqlservr+30560) (XDES::Rollback+14e)0x00431abf Module(sqlservr+31abf) (XCB::Rollback+2f9)0x006e8603 Module(sqlservr+2e8603) (CDTCTransaction::abortTran+d0)0x005aea0c Module(sqlservr+1aea0c) (rm_do_tm_work+102)0x006e6a07 Module(sqlservr+2e6a07) (rm_ods_handler_body+773)0x006e60cf Module(sqlservr+2e60cf) (rm_ods_handler+9e)0x4106135c Module(opends60+135c) (execute_event+659)0x41066fc3 Module(opends60+6fc3) (process_commands+11b)0x4109285a Module(ums+285a) (ProcessWorkRequests+ed)0x41092d28 Module(ums+2d28) (ThreadStartRoutine+139)0x7800bee4 Module(MSVCRT+bee4) (beginthread+ce)0x77f04f3e Module(KERNEL32+4f3e) (BaseThreadStart+51)
Causa
Esse problema ocorre porque os logons que são usados para as conexões de banco de dados não tem permissões para todos os bancos de dados na transação.
Como Contornar
Para contornar o problema, execute uma das seguintes etapas:
  • Verifique se cada logon no banco de dados tem as permissões apropriadas para todos os bancos de dados na mesma transação.
  • Use o mesmo usuário para cada conexão alistado na transação e certifique-se de que é concedido ao usuário permissões para todos os bancos de dados na transação.
Situação
A Microsoft confirmou que esse é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Propriedades

ID do Artigo: 811476 - Última Revisão: 12/08/2015 01:48:20 - Revisão: 2.3

Microsoft SQL Server 7.0 Standard Edition, Microsoft SQL Server 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbsecurity kbauthentication kblogin kbserver kbprb kbbug KB811476 KbMtpt
Comentários