Harald Hedlund

Greetings!

All of a sudden my database server (SQL Server 2005 running on XP SP2) stopped responding to connection requests. Our application is a .NET application that uses System.Transactions and utilizing MSDTC.

I have found the following messages in the EventLog (category is printers):

String message: INFORMATIONAL: CSO::Maintain_SSTATE UP session Failed ProcID 0x1c0 Error=0x80000128 RpcStatus=0.

The following a few times:

String message: ProcID 0x1c0 CS0: Maintain session; Received E_CM_SERVER_NOT_READY

Last message is:

String message: INFORMATIONAL: CSO::Maintain_SSTATE UP session Failed ProcID 0x1c0 Error=0x80000128 RpcStatus=0.

again

Please help me out in what might have gone wrong. We are currently relying on the MSDTC to be stable and we can not afford losing data due it all of a sudden stopping to respond. Is there are way to somehow secure its reliability Any settings one can alter to make it more stable

Grateful for any response,

Harald



Re: Transactions Programming Please help interpreting MSTDC information in the event log

Jesse - MSFT

Those messages are under the printer category

Also, can you make non-transaction requests to the database at all





Re: Transactions Programming Please help interpreting MSTDC information in the event log

Richard Bartel - MSFT

The "printers" part can be ignored; we had some category mismatches in XP for log events. This is an MSDTC message.

The event message error (0x80000128) means that an MSDTC connection was being shutdown which can happen for a number of reason, both unexpected and expected. And the E_CM_SERVER_NOT_READY message means that the old connection partner (i.e. the target that went dark) was not ready to receive a new connection. This is not abnormal behavior.

There isn't much to go on. What does it mean: "my database server stopped responding to connection requests" What exceptions or error messages are you getting I assume an application is reporting this problem.

-Richard





Re: Transactions Programming Please help interpreting MSTDC information in the event log

Nilton Pinheiro - MVP

Hello Richard,

Could the below error have the same explanation. In this case the application is using linked server.

Source: MSDTC

String message: INFORMATIONAL : CSO::Maintain_SSTATE_UP session Failed ProcID=0x2c0 Error =0x80000128.

Source: MSDTC

String message: ProcId = 0x2c0 CSO: Maintain session; Received E_CM_SERVER_NOT_READY

>>> my database server stopped responding to connection requests" Absolutely not.

>>> What exceptions or error messages are you getting In the application.... ˇ°Distributed transaction completed. Either enlist this section in a new transaction or de NULL transaction.ˇ±

Systems:

Windows 2000 SP4 and SQL Server 2000 SP4 (build 2040)

Do you know some possible reason

Thanks a lot

Nilton Pinheiro






Re: Transactions Programming Please help interpreting MSTDC information in the event log

Richard Bartel - MSFT

The two MSDTC messages mean that the communication session with which MSTC was communicating with a partner

went down, and now it's waiting for it to come back up. The partner might be another MSDTC on another machine or a client application or a database server. This is not wholly unusual behavior (e.g. a network failure), and transactional systems are designed to handle this interruption.

The error meassage from the application is application-specific, so I can only speculate. It sounds as if the distributed transaction completed successfully, and that if you want to do any further distributed transactional work that you'll need to create a new transaction or do the work without a distributed transaction.

-Richard





Re: Transactions Programming Please help interpreting MSTDC information in the event log

Nilton Pinheiro - MVP

hummm... it make sence because the parters are separated by a WAN Link!

Very thanks Richard

Nilton Pinheiro

www.mcdbabrasil.com.br