Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

DTC Problems

Status
Not open for further replies.

eichmat

MIS
Oct 24, 2002
20
0
0
US
Ok--here's the scenario I've got:

1) Server-A: Windows NT-4 (SP6), SQL 2000 (no SPs)
2) Server-B: Windows 2003 Server, SQL 2000 (SP3)
2) Server-C: Windows 2000 Server, SQL 2000 (SP2)

Up until this past weekend, when Server-A was rebooted, I've had a few scheduled jobs on Server-B that did calls like this:

INSERT INTO #temptable SELECT ... FROM [Server-A].DB.dbo.table ....

All worked fine until this weekend, when we started getting these errors when running these calls:


Server: Msg 8501, Level 16, State 1, Procedure sp_call, Line 66
MSDTC on server 'Server-A' is unavailable.
Server: Msg 7391, Level 16, State 1, Procedure sp_call, Line 66
The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction.
OLE DB error trace [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d01c].
[/color red]

As I said, both servers were running quite fine until Server-A was rebooted on Saturday. The server did not have any patches applied, etc. requiring the reboot (basically, the network guys said it was "doggish" at the console, so they rebooted it).

Interestingly, when making "SELECT" calls, without doing a local INSERT works fine (SELECT ... FROM [Server-A].DB.dbo.table returns the data--but using it as part of an insert generates the errors above). It only fails once we include the local (Server-B) table insert command.

I've verified that (1) DTC is running on both servers, (2) both servers can ping each other by name and IP, (3) Port 135 is open on both servers (the standard DTC issues I've found in my searches).

Adding a minor twist is this: I can do inserts from Server-A to Server-B tables (INSERT INTO [Server-B].DB.dbo.table ...) without problem! Also, Server-B can execute the same calls against Server-C that fail when using Server-A...

So, obviously there is a problem with Server-A, but I can't figure it out.

Any help would be greatly appreciated!

-Tim
 
As a follow-up.

We've also found these entries in the SQL Server Log on Server-A (target server) whenever attempting to execute the linked server command:

Resource Manager Creation Failed: XACT_E_CONNECTION_DOWN[/color red]

Searches of the MS-KB only report issues addressed in Win-2000 Server, but nothing about NT-4 environments.


-Tim
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top