por Eduardo Tavares de Almeida

Depois de algumas mudanças de disco no servidor rodando Windows 2003 - SP2, todos os serviços iniciavam, mas o MSDTC falhava e registrava o evento abaixo:

Event Type:      Error
Event Source:    MSDTC
Event Category:  Cluster
Event ID:        4394
Date:            12/4/2010
Time:            10:09:31 PM
User:            N/A
Description:
MS DTC's log information has not been configured correctly in the shared cluster registry. Error Specifics: d:\nt\com\complus\dtc\shared\mtxclu\mtxclusetuphelper.cpp:557, Pid: 4688, CmdLine: C:\WINDOWS\system32\msdtc.exe
Data:
0000: 80004005

No evento acima, vemos que existe algum erro relacionado a configuração do recurso MSDTC, o restante do erro só informa o caminho interno para o código fonte.

Quando o recurso está em cluster, temos a chave de registro DTCLogPath no caminho abaixo informando onde o log do MSDTC será gravado.

HKLM\Cluster\Resources\guid\guid\

No nosso caso, ele apontava corretamente para um disco no cluster Q:\

Esse erro pode acontecer se o disco que está o log do MSDTC não é a primeira partição do disco, nesse caso, no cluster.log temos a seguinte entrada registrando o mesmo evento 4394

000008c0.000008d8::2010/12/05-00:09:32.179 INFO Distributed Transaction Coordinator <MSDTC>: In call to CommonTerminate

000008c0.000008d8::2010/12/05-00:09:32.179 INFO Distributed Transaction Coordinator <MSDTC>: Offline request.

000008c0.000008d8::2010/12/05-00:09:32.179 INFO Distributed Transaction Coordinator <MSDTC>: Service died; status = 1062.

Tentamos executar o comando: msdtc -resetlog, porém o erro continuava.

Observamos então diversos discos na dependência do recurso de MSDTC, como no exemplo abaixo:

clip_image002

Observando o artigo 301600, só vemos a necessidade de 1 disco em dependência. Deixamos somente o disco que continha o log na dependência e com isso o serviço iniciou com sucesso!

How to configure Microsoft Distributed Transaction Coordinator on a Windows Server 2003 cluster KB 301600