Showing posts with label transaction. Show all posts
Showing posts with label transaction. Show all posts

Tuesday, March 27, 2012

DTS fails at customer site with "Too many columns", works locally

I am having the most baffling problem with DTS... :confused:

I have a set of ActiveX transforms that execute on my customers flat transaction data files, destination a single database table. Since they switched to a new method of generating the flat file using SAS, the DTS package mysteriously will fail at a couple select records. The error is always the same, and turning on error logging in DTS yielded this:

Step 'DTSStep_DTSDataPumpTask_1' failed

Step Error Source: Microsoft Data Transformation Services Flat File Rowset Provider
Step Error Description:Too many columns found in the current row; non-whitespace characters were found after the last defined column's data.
Step Error code: 80043013
Step Error Help File: DTSFFile.hlp
Step Error Help Context ID:0

Step Execution Started: 11/16/2004 6:37:51 PM
Step Execution Completed: 11/16/2004 6:39:39 PM
Total Step Execution Time: 107.415 seconds
Progress count in Step: 515000

The exact same file parses all the way through on my laptop, with the same DTS package. Tests have revealed no strange characters or whitespaces in the data file, not at that record (running a Test... on any of the active x transforms will fail at row 515186 always, until that row is deleted and it fails on some subsequent row - this iteration went on at the customer site until about 5 rows were deleted this month and it finally worked), not at any other records. My database and the customer database are both using the same, default character set.

The only microsoft KB article referencing anything resembling my problem is
http://support.microsoft.com/default.aspx?scid=kb;en-us;292588
but this does not hold because I am not specifying fixed width, but rather comma delimited.

If anyone has any ideas about what other environmental variables are coming into play here, please let me know - I'm at the end of my rope. I believe we are both patched up to SQL 2000 SP3. They have an XP client connecting to a 2003 server; I have an XP client/server. Neither machine has the NLS_LANG environment variable set.This may not be helpful...but have you considered just using a stored procedure instead?|||What happens to that row when you try to import the file into access? If you create an extra column at the top of the flat file, it should insert whatevers in that column for the five offending rows right? Once you get it into a table query it with a NOT NULL. It might give you a clue as to what the offending characters are.

If your stuck with the file then you might just have to use the insertfail phase to make the pump task skip to the next record when it finds an offending row. Read up on multiphase to find out exactly how you'd do this.

Sorry can't help you more.|||Modify the DTS package to use an Execute Process Task and then use bcp.

-or-Use Execute SQL Task and the Bulk Insert Transact-SQL command.|||...the file imports fine here with the exact same DTS package, so I don't want to modify it to address a problem that isn't really the problem. IN other words, there is nothing to indicate there is anything actually wrong with the data itself - no whitespaces, no bad characters or problem causing characters, no datatype mismatch, nothing; it looks just like the last row. Here are the rows before and after as well as the one that failed:

737,10/15/2004,09:11:39,114,15536,1
737,10/15/2004,09:11:49,114,18408,1
737,10/15/2004,09:11:54,714,18024,1

I am not using column 5, but all the others. From last month to this month the number of offending rows increased from 1 to 7, so I don't want to start throwing away data that for all other intensive purposes looks good automatically in case it starts multiplying.

Since it works here but fails there, it has to be something environmental, maybe with character sets or??|||Generating files from SAS...Like from a mainframe?

I betcha you got some low values [CHAR('00') ] going on...

I know you don't want to alter your process, but I ALWAYS create a staging environment and load the data to it, then audit the data to look for problems...then I move the data in after I verify it...

And it's all done with a stored procedure|||Thanks for the tip. I am looking into how these "low values" occur and how these EBCDIC to ASCII conversions can get hung up. I'm sure the answer lies somewhere in there.

Well, the front end application will run a custom DTS package, but not a custom SP. At least the staging need is moot, because it rolls the whole thing back if one record fails...

Sunday, March 25, 2012

DTS Error: transaction exceeded allotted time

I receive this error "The transaction has exceeded the allotted time" in a
pop-up sometimes when I use DTS. This happens in an randomly way, when I run a package, when I try to open a package or save it, and normally happens when the machine is very busy with another process.
The packages are saved as Meta Data Services Packages.
I'm running SQL Server 2000 with SP2, and Windows 2000 Advanced
Server with SP2.this may help u

resource timeout Option
Use the resource timeout option to specify the number of seconds to wait for a resource to be released. resource timeout controls the overall time out of asynchronous input/output (I/O) operations. The default setting is 10; any operation that takes longer than 10 seconds to complete results in a time-out warning.

Do not set this value too low or resources may time out in an unrealistically short time. Increase this value if the Microsoft SQL Server error log shows a lot of logwrite or bufwait time-out warnings; this reduces the frequency with which these errors are generated. Allowing a transaction to take more time is often better than allowing it to fail.

resource timeout is an advanced option. If you are using the sp_configure system stored procedure to change the setting, you can change resource timeout only when show advanced options is set to 1. The setting takes effect immediately (without a server stop and restart).

Sunday, February 19, 2012

DTCXact transaction in DBCC openTran

I keep seeing this return from running a DBCC OpenTran:

Transaction information for database 'Live_App'.

Oldest active transaction:
SPID (server process ID) : 92
UID (user ID) : 1
Name : DTCXact
LSN : (12837:1924:1)
Start time : Oct 4 2004 8:54:03:570AM
DBCC execution completed. If DBCC printed error messages, contact your
system administrator.

I don't see anywhere in code that begins a transaction with the name
DTCXact explicitly. Is this a generic name for any transaction that is
opened without an explicit name? The problem I am having with this is
that sometime it will start and may not get commited or rolledback for
quite some time. I have seen it remain for over 1 1/2 hours before.
Would that be caused by the application not cleaning it up?
Your help in explaining the source of this will be appreciated. I did
find an entry on Microsoft.com that used the word DTCXact. It was
talking about Transaction Propagation from Resource Manager To
Application. I'm not sure if this applies to what I am seeing here or
not.

Thank you.
Kalvin

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!"Kalvin" <ktXXDelMeXXuel@.streck.com> wrote in message
news:4161599e$0$26142$c397aba@.news.newsgroups.ws.. .
> I keep seeing this return from running a DBCC OpenTran:
> Transaction information for database 'Live_App'.
> Oldest active transaction:
> SPID (server process ID) : 92
> UID (user ID) : 1
> Name : DTCXact
> LSN : (12837:1924:1)
> Start time : Oct 4 2004 8:54:03:570AM
> DBCC execution completed. If DBCC printed error messages, contact your
> system administrator.
>
> I don't see anywhere in code that begins a transaction with the name
> DTCXact explicitly. Is this a generic name for any transaction that is
> opened without an explicit name? The problem I am having with this is
> that sometime it will start and may not get commited or rolledback for
> quite some time. I have seen it remain for over 1 1/2 hours before.
> Would that be caused by the application not cleaning it up?
> Your help in explaining the source of this will be appreciated. I did
> find an entry on Microsoft.com that used the word DTCXact. It was
> talking about Transaction Propagation from Resource Manager To
> Application. I'm not sure if this applies to what I am seeing here or
> not.
> Thank you.
> Kalvin
> *** Sent via Developersdex http://www.developersdex.com ***
> Don't just participate in USENET...get rewarded for it!

It looks like a distributed query, ie. a query or stored procedure being
executed on another server via a linked server (DTC is the Distributed
Transaction Coordinator service). You can use DBCC INPUTBUFFER,
fn_get_sql(), or Profiler to see exactly what the SPID is doing.

Simon

DTCPing works, but distributed transaction cannot be started

Hi!
I'm getting an error when trying to start simple distributed
transaction.
Configuration is Win2k3/SQL2K <-> Win2k3 Cluster / SQL2K
[OLE/DB provider returned message: New transaction cannot enlist in the
specified transaction coordinator. ]
OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
ITransactionJoin::JoinTransaction returned 0x8004d00a].
DTCPing works in both directions, but there is one strange thing in log
on cluster server:
Cluster Environment detected
03-06, 06:52:43.296-->Invalid IP Address:207.x.x.253
(Mask:255.255.255.248) (38)
MSDTC Virtual Name:DTC1, IP:
When used internal an IP address, there is no such message.
Here is a full log of DTC ping on a cluster:
Platform:Windows 2003
cluster environment detected:
Windows 2003,sp1 environment is detected:
Reading MSDTC settings from cluster registry:
NetworkDtcAccess :true
NetworkDtcAccessAdmin :true
NetworkDtcAccessClients :true
NetworkDtcAccessTransactions:true
NetworkDtcAccessTip :false
XaTransactions :true
TurnOffRpcSecurity :true
NetworkDtcAccessOutbound :true
NetworkDtcAccessInbound :true
FallbackToUnsecureRPCIfNecessary:false
AllowOnlySecureRpcCalls :false
AccountName :NT AUTHORITY\NetworkService
IP Configure Information
Host Name . . . . . . . . . : HOSTA1
DNS Servers . . . . . . . . : 192.168.0.8
192.168.0.7
207.x.x.250
63.x.x.5
Node Type . . . . . . . . . :
NetBIOS Scope ID. . . . . . :
IP Routing Enabled. . . . . : no
WINS Proxy Enabled. . . . . : no
NetBIOS Resolution Uses DNS : no
Ethernet adapter {BBA542FC-1328-4246-A31B-16379406424B}:
Description . . . . . . . . : BASP Virtual Adapter
Physical Address. . . . . . : 00-10-18-14-4C-4E
DHCP Enabled. . . . . . . . : no
IP Address. . . . . . . . . : 192.168.0.103
Subnet Mask . . . . . . . . : 255.255.255.0
IP Address. . . . . . . . . : 192.168.0.101
Subnet Mask . . . . . . . . : 255.255.255.0
IP Address. . . . . . . . . : 192.168.0.100
Subnet Mask . . . . . . . . : 255.255.255.0
IP Address. . . . . . . . . : 192.168.0.105
Subnet Mask . . . . . . . . : 255.255.255.0
IP Address. . . . . . . . . : 192.168.0.107
Subnet Mask . . . . . . . . : 255.255.255.0
IP Address. . . . . . . . . : 192.168.0.8
Subnet Mask . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . :
DHCP Server . . . . . . . . : 255.255.255.255
Primary WINS Server . . . . : 0.0.0.0
Secondary WINS Server . . . : 0.0.0.0
Lease Obtained. . . . . . . : Thu Jan 01 00:00:00 1970
Lease Expires . . . . . . . : Thu Jan 01 00:00:00 1970
Ethernet adapter {52ED9D48-488E-4265-AC55-3CE5BBFDBF23}:
Description . . . . . . . . : Broadcom NetXtreme Gigabit
Ethernet
Physical Address. . . . . . : 00-14-22-73-F9-C9
DHCP Enabled. . . . . . . . : no
IP Address. . . . . . . . . : 207.x.x.253
Subnet Mask . . . . . . . . : 255.255.255.248
IP Address. . . . . . . . . : 207.x.x.251
Subnet Mask . . . . . . . . : 255.255.255.248
IP Address. . . . . . . . . : 207.x.x.250
Subnet Mask . . . . . . . . : 255.255.255.248
Default Gateway . . . . . . : 207.x.x.249
DHCP Server . . . . . . . . : 255.255.255.255
Primary WINS Server . . . . : 0.0.0.0
Secondary WINS Server . . . : 0.0.0.0
Lease Obtained. . . . . . . : Thu Jan 01 00:00:00 1970
Lease Expires . . . . . . . : Thu Jan 01 00:00:00 1970
++++++++++++lmhosts.sam++++++++++++
++++++++++++hosts ++++++++++++
127.0.0.1 localhost
193.x.x.147 HOSTB1
Cluster Environment detected
03-06, 06:52:43.296-->Invalid IP Address:207.x.x.253
(Mask:255.255.255.248) (38)
MSDTC Virtual Name:DTC1, IP:
++++++++++++++++++++++++++++++++++++++++++++++
DTCping 1.9 Report for
++++++++++++++++++++++++++++++++++++++++++++++
Firewall Port Settings:
Port:5000-5200
RPC server is ready
03-06, 06:52:51.078-->RPC server: received following information:
Network Name: HOSTA1
Source Port: 5069
Partner LOG: HOSTB15232.log
Partner CID: CA74E8B7-5274-40DF-97F0-CCF7B89895A9
++++++++++++Start Reverse Bind Test+++++++++++++
Received Bind call from HOSTB1
Network Name: HOSTA1
Source Port: 5069
Hosting Machine:
03-06, 06:52:51.296-->Trying to Reverse Bind to HOSTB1...
Test Guid:CA74E8B7-5274-40DF-97F0-CCF7B89895A9
Name Resolution:
HOSTB1-->193.x.x.147-->HOSTB1
Reverse Binding success: -->HOSTB1
++++++++++++Reverse Bind Test ENDED++++++++++
03-06, 06:52:52.296-->Called POKE from Partner:HOSTB1
Network Name: HOSTA1
Source Port: 5069
Hosting Machine:
++++++++++++Validating Remote Computer Name++++++++++++
03-06, 06:52:55.140-->Start DTC connection test
Name Resolution:
HOSTB1-->193.x.x.147-->HOSTB1
03-06, 06:52:55.156-->Start RPC test (-->HOSTB1)
RPC test is successful
Partner's CID:CA74E8B7-5274-40DF-97F0-CCF7B89895A9
++++++++++++RPC test completed+++++++++++++++
++++++++++++Start DTC Binding Test +++++++++++++
Trying Bind to HOSTB1
03-06, 06:52:55.296--> Initiating DTC Binding Test...
Test Guid:66C8FDED-CEC3-4C56-A4F6-F6EA236DAD5F
Received reverse bind call from HOSTB1
Network Name: HOSTA1
Source Port: 5069
Hosting Machine:
Binding success: -->HOSTB1
++++++++++++DTC Binding Test END+++++++++++++
Anyone can help me?
|||See if this helps.
HOWTO: Enable DTC Between Web Servers and SQL Servers Running Windows Server
2003
http://support.microsoft.com/kb/555017/en-us
Geoff N. Hiten
Senior Database Administrator
Microsoft SQL Server MVP
<maqdev@.gmail.com> wrote in message
news:1141651435.453798.152890@.u72g2000cwu.googlegr oups.com...
> Hi!
> I'm getting an error when trying to start simple distributed
> transaction.
> Configuration is Win2k3/SQL2K <-> Win2k3 Cluster / SQL2K
> ----
> [OLE/DB provider returned message: New transaction cannot enlist in the
> specified transaction coordinator. ]
> OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
> ITransactionJoin::JoinTransaction returned 0x8004d00a].
> ----
> DTCPing works in both directions, but there is one strange thing in log
> on cluster server:
> ----
> Cluster Environment detected
> 03-06, 06:52:43.296-->Invalid IP Address:207.x.x.253
> (Mask:255.255.255.248) (38)
> MSDTC Virtual Name:DTC1, IP:
> ----
> When used internal an IP address, there is no such message.
> Here is a full log of DTC ping on a cluster:
> ----
> Platform:Windows 2003
> cluster environment detected:
> Windows 2003,sp1 environment is detected:
> Reading MSDTC settings from cluster registry:
> NetworkDtcAccess :true
> NetworkDtcAccessAdmin :true
> NetworkDtcAccessClients :true
> NetworkDtcAccessTransactions:true
> NetworkDtcAccessTip :false
> XaTransactions :true
> TurnOffRpcSecurity :true
> NetworkDtcAccessOutbound :true
> NetworkDtcAccessInbound :true
> FallbackToUnsecureRPCIfNecessary:false
> AllowOnlySecureRpcCalls :false
> AccountName :NT AUTHORITY\NetworkService
> IP Configure Information
> Host Name . . . . . . . . . : HOSTA1
> DNS Servers . . . . . . . . : 192.168.0.8
> 192.168.0.7
> 207.x.x.250
> 63.x.x.5
> Node Type . . . . . . . . . :
> NetBIOS Scope ID. . . . . . :
> IP Routing Enabled. . . . . : no
> WINS Proxy Enabled. . . . . : no
> NetBIOS Resolution Uses DNS : no
>
> Ethernet adapter {BBA542FC-1328-4246-A31B-16379406424B}:
> Description . . . . . . . . : BASP Virtual Adapter
> Physical Address. . . . . . : 00-10-18-14-4C-4E
> DHCP Enabled. . . . . . . . : no
> IP Address. . . . . . . . . : 192.168.0.103
> Subnet Mask . . . . . . . . : 255.255.255.0
> IP Address. . . . . . . . . : 192.168.0.101
> Subnet Mask . . . . . . . . : 255.255.255.0
> IP Address. . . . . . . . . : 192.168.0.100
> Subnet Mask . . . . . . . . : 255.255.255.0
> IP Address. . . . . . . . . : 192.168.0.105
> Subnet Mask . . . . . . . . : 255.255.255.0
> IP Address. . . . . . . . . : 192.168.0.107
> Subnet Mask . . . . . . . . : 255.255.255.0
> IP Address. . . . . . . . . : 192.168.0.8
> Subnet Mask . . . . . . . . : 255.255.255.0
> Default Gateway . . . . . . :
> DHCP Server . . . . . . . . : 255.255.255.255
> Primary WINS Server . . . . : 0.0.0.0
> Secondary WINS Server . . . : 0.0.0.0
> Lease Obtained. . . . . . . : Thu Jan 01 00:00:00 1970
> Lease Expires . . . . . . . : Thu Jan 01 00:00:00 1970
> Ethernet adapter {52ED9D48-488E-4265-AC55-3CE5BBFDBF23}:
> Description . . . . . . . . : Broadcom NetXtreme Gigabit
> Ethernet
> Physical Address. . . . . . : 00-14-22-73-F9-C9
> DHCP Enabled. . . . . . . . : no
> IP Address. . . . . . . . . : 207.x.x.253
> Subnet Mask . . . . . . . . : 255.255.255.248
> IP Address. . . . . . . . . : 207.x.x.251
> Subnet Mask . . . . . . . . : 255.255.255.248
> IP Address. . . . . . . . . : 207.x.x.250
> Subnet Mask . . . . . . . . : 255.255.255.248
> Default Gateway . . . . . . : 207.x.x.249
> DHCP Server . . . . . . . . : 255.255.255.255
> Primary WINS Server . . . . : 0.0.0.0
> Secondary WINS Server . . . : 0.0.0.0
> Lease Obtained. . . . . . . : Thu Jan 01 00:00:00 1970
> Lease Expires . . . . . . . : Thu Jan 01 00:00:00 1970
>
> ++++++++++++lmhosts.sam++++++++++++
>
> ++++++++++++hosts ++++++++++++
> 127.0.0.1 localhost
> 193.x.x.147 HOSTB1
>
> Cluster Environment detected
> 03-06, 06:52:43.296-->Invalid IP Address:207.x.x.253
> (Mask:255.255.255.248) (38)
> MSDTC Virtual Name:DTC1, IP:
> ++++++++++++++++++++++++++++++++++++++++++++++
> DTCping 1.9 Report for
> ++++++++++++++++++++++++++++++++++++++++++++++
> Firewall Port Settings:
> Port:5000-5200
> RPC server is ready
> 03-06, 06:52:51.078-->RPC server: received following information:
> Network Name: HOSTA1
> Source Port: 5069
> Partner LOG: HOSTB15232.log
> Partner CID: CA74E8B7-5274-40DF-97F0-CCF7B89895A9
> ++++++++++++Start Reverse Bind Test+++++++++++++
> Received Bind call from HOSTB1
> Network Name: HOSTA1
> Source Port: 5069
> Hosting Machine:
> 03-06, 06:52:51.296-->Trying to Reverse Bind to HOSTB1...
> Test Guid:CA74E8B7-5274-40DF-97F0-CCF7B89895A9
> Name Resolution:
> HOSTB1-->193.x.x.147-->HOSTB1
> Reverse Binding success: -->HOSTB1
> ++++++++++++Reverse Bind Test ENDED++++++++++
> 03-06, 06:52:52.296-->Called POKE from Partner:HOSTB1
> Network Name: HOSTA1
> Source Port: 5069
> Hosting Machine:
> ++++++++++++Validating Remote Computer Name++++++++++++
> 03-06, 06:52:55.140-->Start DTC connection test
> Name Resolution:
> HOSTB1-->193.x.x.147-->HOSTB1
> 03-06, 06:52:55.156-->Start RPC test (-->HOSTB1)
> RPC test is successful
> Partner's CID:CA74E8B7-5274-40DF-97F0-CCF7B89895A9
> ++++++++++++RPC test completed+++++++++++++++
> ++++++++++++Start DTC Binding Test +++++++++++++
> Trying Bind to HOSTB1
> 03-06, 06:52:55.296--> Initiating DTC Binding Test...
> Test Guid:66C8FDED-CEC3-4C56-A4F6-F6EA236DAD5F
> Received reverse bind call from HOSTB1
> Network Name: HOSTA1
> Source Port: 5069
> Hosting Machine:
> Binding success: -->HOSTB1
> ++++++++++++DTC Binding Test END+++++++++++++
>

DTC Transaction Abort error

We are using MSDTC to handle our transactions and some clients seem to be getting these errors more and more when we went to framework 2.0. Any ideas what could be causing this?

Before in framework 1.1 we would ask our clients to re-register their computer into the domain and/or rename their computer and this worked but it seems like in framework 2.0 it doesn't do the trick. Also, the wrong dns setup causes this too but after trying to fix both things it still doesn't work. I believe this error means either the server has finished the transaction and can't find the client to return the result or the active directory account/computer account is corrupted. Any ideas?

The transaction has already been implicitly or explicitly committed or aborted.


Type: TransactionException
StackTrace:
Server stack trace:
at System.Transactions.Oletx.OletxTransactionManager.ProxyException(COMException comException)
at System.Transactions.TransactionInterop.GetExportCookie(Transaction transaction, Byte[] whereabouts)
at System.Data.SqlClient.SqlInternalConnection.EnlistNonNull(Transaction tx)
at System.Data.SqlClient.SqlInternalConnection.Enlist(Transaction tx)
at System.Data.SqlClient.SqlInternalConnectionTds.Activate(Transaction transaction)
at System.Data.ProviderBase.DbConnectionInternal.ActivateConnection(Transaction transaction)
at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.SqlClient.SqlConnection.Open()

Previously

For DTC issues, you should try posting on SQL Server Integration Services.

Thanks
Laurentiu

DTC problems connecting to server 2003

I have all the symptoms of KB article 839279:
"When you run a distributed transaction against an instance of SQL Server,
you may receive an error message that is similar to the following:
Server: Msg 7391, Level 16, State 1, Line 1
The operation could not be performed because the OLE DB provider
'SQLOLEDB' was unable to begin a distributed transaction. [OLE/DB provid
er
returned message: New transaction cannot enlist in the specified
transaction coordinator. ] OLE DB error trace [OLE/DB Provider 'SQLOLEDB
'
ITransactionJoin::JoinTransaction returned 0x8004d00a].
This problem may occur when one of following conditions is true:
Microsoft Windows Server 2003 or Microsoft Windows XP Service Pack 2
(SP2) is installed on the computer that initiates the distributed
transaction.
Microsoft Windows Server 2003 or Microsoft Windows XP SP2 is installed on
the remote computer that is running Microsoft SQL Server 2000, and that
computer is linked to the computer that initiates the distributed
transaction."
In my case, Windows server 2003 is running SQL server 2000, and I am trying
to do an INSERT INTO <table> EXEC <storedproc> from another computer that
has SQL server 2000 installed.
I can link the remote server, and run the stored proc and look at the
resulting records, but I can't do the INSERT INTO using the result of the
stored procedure -- I get the message:
Server: Msg 8501, Level 16, State 1, Line 1
MSDTC on server 'server\database' is unavailable.
Server: Msg 7391, Level 16, State 1, Line 1
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].
In the "workaround" section of the KB article, Step 2, substeps g-i are not
possible on Windows server 2003 (non-SP1). It says to select Allow
Inbound and Allow Outbound, and also to check No Authentication Required in
the Transaction Manager Communication box. I can't! Those choices do not
appear in the dialog boxes.
Any suggestions on how to set the DTC "No Authentication Required" option?
David WalkerSEE http://support.microsoft.com/defaul...kb;en-us;827805
from http://support.microsoft.com/?kbid=555017
Disable RPC Security for MSDTC Service on SQL Server
This step requires accessing and modifying the registry. If you have
not already done so, it is highly recommended that you back up the
registry at this time.
1. Click Start, click Run, type in "Regedt32", and click OK.
2. Select HKEY_LOCAL_MACHINE, then SOFTWARE, then Microsoft.
3. Right-click on MSDTC, point to Add, then select DWORD Value.
4. Rename the key from the default New Value #1 to
TurnOffRpcSecurity.
5. Double-click the new key and change the value to 1.
6. Close the Registry Editor and restart the SQL Server

DTC problems connecting to server 2003

I have all the symptoms of KB article 839279:
"When you run a distributed transaction against an instance of SQL Server,
you may receive an error message that is similar to the following:
Server: Msg 7391, Level 16, State 1, Line 1
The operation could not be performed because the OLE DB provider
'SQLOLEDB' was unable to begin a distributed transaction. [OLE/DB provider
returned message: New transaction cannot enlist in the specified
transaction coordinator. ] OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
ITransactionJoin::JoinTransaction returned 0x8004d00a].
This problem may occur when one of following conditions is true:
Microsoft Windows Server 2003 or Microsoft Windows XP Service Pack 2
(SP2) is installed on the computer that initiates the distributed
transaction.
Microsoft Windows Server 2003 or Microsoft Windows XP SP2 is installed on
the remote computer that is running Microsoft SQL Server 2000, and that
computer is linked to the computer that initiates the distributed
transaction."
In my case, Windows server 2003 is running SQL server 2000, and I am trying
to do an INSERT INTO <table> EXEC <storedproc> from another computer that
has SQL server 2000 installed.
I can link the remote server, and run the stored proc and look at the
resulting records, but I can't do the INSERT INTO using the result of the
stored procedure -- I get the message:
Server: Msg 8501, Level 16, State 1, Line 1
MSDTC on server 'server\database' is unavailable.
Server: Msg 7391, Level 16, State 1, Line 1
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].
In the "workaround" section of the KB article, Step 2, substeps g-i are not
possible on Windows server 2003 (non-SP1). It says to select Allow
Inbound and Allow Outbound, and also to check No Authentication Required in
the Transaction Manager Communication box. I can't! Those choices do not
appear in the dialog boxes.
Any suggestions on how to set the DTC "No Authentication Required" option?
David Walker
SEE http://support.microsoft.com/default...b;en-us;827805
from http://support.microsoft.com/?kbid=555017
Disable RPC Security for MSDTC Service on SQL Server
This step requires accessing and modifying the registry. If you have
not already done so, it is highly recommended that you back up the
registry at this time.
1. Click Start, click Run, type in "Regedt32", and click OK.
2. Select HKEY_LOCAL_MACHINE, then SOFTWARE, then Microsoft.
3. Right-click on MSDTC, point to Add, then select DWORD Value.
4. Rename the key from the default New Value #1 to
TurnOffRpcSecurity.
5. Double-click the new key and change the value to 1.
6. Close the Registry Editor and restart the SQL Server

DTC problem with SQL 2005 on Server 2003

I'm getting a strange error trying to run a distributed transaction between 2
SQL 2005 machines.
The error reads
'OLE DB provider "SQLNCLI" for linked server "RemoteServer" returned message
"No transaction is active"'
'Msg 7391, Level 16, State 2, Line 2'
'The operation could not be performed because OLE DB provider "SQLNCLI" for
linked server "RemoteServer" was unable to begin a distributed transaction"
The query that I'm trying to run is very simple. The table A exists on both
machines
BEGIN TRANSACTION
INSERT INTO TestDB.dbo.A (B) VALUES ('Test Local')
INSERT INTO RemoteServer.TestDB.dbo.A (B) VALUES ('Test Local')
COMMIT TRANSACTION
DTC is running on both machines and I've configured it to allow network
access, remote clients, remote administration, Inbound and Outbound
communications(Component Services->My Computer->DTC)
The linked server uses a specific security context and allows data access,
rpc and rpc out.
Both the inserts run fine by themselves. It's only when run together in a
transaction that they break.
Has anyone got a solution, or suggestion please?
Thanks.
Gail Shaw (MCSD)
http://gail.rucus.net/
As an off the wall possibility or two, can the two servers see each other and
do the SS service accounts have the 'right' os level privileges?
I have seen this type of situation when there are network firewall and
similar issuses/interferences present.
Joseph R.P. Maloney, CSP,CCP,CDP
"GilaMonster" wrote:

> I'm getting a strange error trying to run a distributed transaction between 2
> SQL 2005 machines.
> The error reads
> 'OLE DB provider "SQLNCLI" for linked server "RemoteServer" returned message
> "No transaction is active"'
> 'Msg 7391, Level 16, State 2, Line 2'
> 'The operation could not be performed because OLE DB provider "SQLNCLI" for
> linked server "RemoteServer" was unable to begin a distributed transaction"
> The query that I'm trying to run is very simple. The table A exists on both
> machines
> BEGIN TRANSACTION
> INSERT INTO TestDB.dbo.A (B) VALUES ('Test Local')
> INSERT INTO RemoteServer.TestDB.dbo.A (B) VALUES ('Test Local')
> COMMIT TRANSACTION
> DTC is running on both machines and I've configured it to allow network
> access, remote clients, remote administration, Inbound and Outbound
> communications(Component Services->My Computer->DTC)
> The linked server uses a specific security context and allows data access,
> rpc and rpc out.
> Both the inserts run fine by themselves. It's only when run together in a
> transaction that they break.
> Has anyone got a solution, or suggestion please?
> Thanks.
> --
> Gail Shaw (MCSD)
> http://gail.rucus.net/
|||The two machines can see each other fine. They're part of a replication
scenario I'm testing. The remote query works fine if run alone, it's only
when the two are run together that there's a problem.
DTC is running as the Network Service account. Both SQL services are running
as local admin.
I don't think there's a firewall. Does Server 2003 have a firewall
automatically on? There's no fancy hardware between them, just a 100Mbit hub.
Thanks
Gail Shaw (MCSD)
http://gail.rucus.net/
|||When is someone going to post an answer to this question? I am having the
same problem and can't find an answer anywhere.
Please, Microsoft, answer this question!
Corey Young
"GilaMonster" wrote:

> The two machines can see each other fine. They're part of a replication
> scenario I'm testing. The remote query works fine if run alone, it's only
> when the two are run together that there's a problem.
> DTC is running as the Network Service account. Both SQL services are running
> as local admin.
> I don't think there's a firewall. Does Server 2003 have a firewall
> automatically on? There's no fancy hardware between them, just a 100Mbit hub.
> Thanks
> --
> Gail Shaw (MCSD)
> http://gail.rucus.net/
>
>

DTC problem with SQL 2005 on Server 2003

I'm getting a strange error trying to run a distributed transaction between
2
SQL 2005 machines.
The error reads
'OLE DB provider "SQLNCLI" for linked server "RemoteServer" returned message
"No transaction is active"'
'Msg 7391, Level 16, State 2, Line 2'
'The operation could not be performed because OLE DB provider "SQLNCLI" for
linked server "RemoteServer" was unable to begin a distributed transaction"
The query that I'm trying to run is very simple. The table A exists on both
machines
BEGIN TRANSACTION
INSERT INTO TestDB.dbo.A (B) VALUES ('Test Local')
INSERT INTO RemoteServer.TestDB.dbo.A (B) VALUES ('Test Local')
COMMIT TRANSACTION
DTC is running on both machines and I've configured it to allow network
access, remote clients, remote administration, Inbound and Outbound
communications(Component Services->My Computer->DTC)
The linked server uses a specific security context and allows data access,
rpc and rpc out.
Both the inserts run fine by themselves. It's only when run together in a
transaction that they break.
Has anyone got a solution, or suggestion please?
Thanks.
--
Gail Shaw (MCSD)
http://gail.rucus.net/As an off the wall possibility or two, can the two servers see each other an
d
do the SS service accounts have the 'right' os level privileges?
I have seen this type of situation when there are network firewall and
similar issuses/interferences present.
--
Joseph R.P. Maloney, CSP,CCP,CDP
"GilaMonster" wrote:

> I'm getting a strange error trying to run a distributed transaction betwee
n 2
> SQL 2005 machines.
> The error reads
> 'OLE DB provider "SQLNCLI" for linked server "RemoteServer" returned messa
ge
> "No transaction is active"'
> 'Msg 7391, Level 16, State 2, Line 2'
> 'The operation could not be performed because OLE DB provider "SQLNCLI" fo
r
> linked server "RemoteServer" was unable to begin a distributed transaction
"
> The query that I'm trying to run is very simple. The table A exists on bot
h
> machines
> BEGIN TRANSACTION
> INSERT INTO TestDB.dbo.A (B) VALUES ('Test Local')
> INSERT INTO RemoteServer.TestDB.dbo.A (B) VALUES ('Test Local')
> COMMIT TRANSACTION
> DTC is running on both machines and I've configured it to allow network
> access, remote clients, remote administration, Inbound and Outbound
> communications(Component Services->My Computer->DTC)
> The linked server uses a specific security context and allows data access,
> rpc and rpc out.
> Both the inserts run fine by themselves. It's only when run together in a
> transaction that they break.
> Has anyone got a solution, or suggestion please?
> Thanks.
> --
> Gail Shaw (MCSD)
> http://gail.rucus.net/|||The two machines can see each other fine. They're part of a replication
scenario I'm testing. The remote query works fine if run alone, it's only
when the two are run together that there's a problem.
DTC is running as the Network Service account. Both SQL services are running
as local admin.
I don't think there's a firewall. Does Server 2003 have a firewall
automatically on? There's no fancy hardware between them, just a 100Mbit hub
.
Thanks
Gail Shaw (MCSD)
http://gail.rucus.net/|||When is someone going to post an answer to this question? I am having the
same problem and can't find an answer anywhere.
Please, Microsoft, answer this question!
Corey Young
"GilaMonster" wrote:

> The two machines can see each other fine. They're part of a replication
> scenario I'm testing. The remote query works fine if run alone, it's only
> when the two are run together that there's a problem.
> DTC is running as the Network Service account. Both SQL services are runni
ng
> as local admin.
> I don't think there's a firewall. Does Server 2003 have a firewall
> automatically on? There's no fancy hardware between them, just a 100Mbit h
ub.
> Thanks
> --
> Gail Shaw (MCSD)
> http://gail.rucus.net/
>
>

DTC problem with SQL 2005 on Server 2003

I'm getting a strange error trying to run a distributed transaction between 2
SQL 2005 machines.
The error reads
'OLE DB provider "SQLNCLI" for linked server "RemoteServer" returned message
"No transaction is active"'
'Msg 7391, Level 16, State 2, Line 2'
'The operation could not be performed because OLE DB provider "SQLNCLI" for
linked server "RemoteServer" was unable to begin a distributed transaction"
The query that I'm trying to run is very simple. The table A exists on both
machines
BEGIN TRANSACTION
INSERT INTO TestDB.dbo.A (B) VALUES ('Test Local')
INSERT INTO RemoteServer.TestDB.dbo.A (B) VALUES ('Test Local')
COMMIT TRANSACTION
DTC is running on both machines and I've configured it to allow network
access, remote clients, remote administration, Inbound and Outbound
communications(Component Services->My Computer->DTC)
The linked server uses a specific security context and allows data access,
rpc and rpc out.
Both the inserts run fine by themselves. It's only when run together in a
transaction that they break.
Has anyone got a solution, or suggestion please?
Thanks.
--
Gail Shaw (MCSD)
http://gail.rucus.net/As an off the wall possibility or two, can the two servers see each other and
do the SS service accounts have the 'right' os level privileges?
I have seen this type of situation when there are network firewall and
similar issuses/interferences present.
--
Joseph R.P. Maloney, CSP,CCP,CDP
"GilaMonster" wrote:
> I'm getting a strange error trying to run a distributed transaction between 2
> SQL 2005 machines.
> The error reads
> 'OLE DB provider "SQLNCLI" for linked server "RemoteServer" returned message
> "No transaction is active"'
> 'Msg 7391, Level 16, State 2, Line 2'
> 'The operation could not be performed because OLE DB provider "SQLNCLI" for
> linked server "RemoteServer" was unable to begin a distributed transaction"
> The query that I'm trying to run is very simple. The table A exists on both
> machines
> BEGIN TRANSACTION
> INSERT INTO TestDB.dbo.A (B) VALUES ('Test Local')
> INSERT INTO RemoteServer.TestDB.dbo.A (B) VALUES ('Test Local')
> COMMIT TRANSACTION
> DTC is running on both machines and I've configured it to allow network
> access, remote clients, remote administration, Inbound and Outbound
> communications(Component Services->My Computer->DTC)
> The linked server uses a specific security context and allows data access,
> rpc and rpc out.
> Both the inserts run fine by themselves. It's only when run together in a
> transaction that they break.
> Has anyone got a solution, or suggestion please?
> Thanks.
> --
> Gail Shaw (MCSD)
> http://gail.rucus.net/|||The two machines can see each other fine. They're part of a replication
scenario I'm testing. The remote query works fine if run alone, it's only
when the two are run together that there's a problem.
DTC is running as the Network Service account. Both SQL services are running
as local admin.
I don't think there's a firewall. Does Server 2003 have a firewall
automatically on? There's no fancy hardware between them, just a 100Mbit hub.
Thanks
--
Gail Shaw (MCSD)
http://gail.rucus.net/|||When is someone going to post an answer to this question? I am having the
same problem and can't find an answer anywhere.
Please, Microsoft, answer this question!
--
Corey Young
"GilaMonster" wrote:
> The two machines can see each other fine. They're part of a replication
> scenario I'm testing. The remote query works fine if run alone, it's only
> when the two are run together that there's a problem.
> DTC is running as the Network Service account. Both SQL services are running
> as local admin.
> I don't think there's a firewall. Does Server 2003 have a firewall
> automatically on? There's no fancy hardware between them, just a 100Mbit hub.
> Thanks
> --
> Gail Shaw (MCSD)
> http://gail.rucus.net/
>
>

DTC Problem - Unable to begin a transaction

I have a strange one. I have 2 Win2K3 servers, one running SQL 2K5 and the
other 2K SP4. From the 2K5 SQL Server I issue the following query ...
declare @.tmpStr varchar(2000);
declare @.ib table (EventType nvarchar(30), Parameters int, EventInfo
nvarchar(255));
set @.tmpstr = 'exec(''dbcc inputbuffer(71) WITH NO_INFOMSGS'') at
[SQL200Server];';
insert into @.ib
exec (@.tmpStr);
and I get the following error messages ...
OLE DB provider "SQLNCLI" for linked server "SQL2000Server" returned message
"No transaction is active.".
Msg 7391, Level 16, State 2, Line 1
The operation could not be performed because OLE DB provider "SQLNCLI" for
linked server "SQL2000Server" was unable to begin a distributed transaction.
If I simply comment out the 'insert into @.ib' line, it works fine. We
apparently still have something misconfigured in DTC between the servers, bu
t
I can't figure out what? Any ideas anyone? Thanks in advance.Arghknork wrote:
> If I simply comment out the 'insert into @.ib' line, it works fine. We
> apparently still have something misconfigured in DTC between the servers,
but
> I can't figure out what? Any ideas anyone? Thanks in advance.
>
Network access to MSDTC is disabled by default on a Windows 2003 Server
machine.
http://blogs.msdn.com/mab/archive/2.../30/508273.aspx|||Arghknork wrote:
> If I simply comment out the 'insert into @.ib' line, it works fine. We
> apparently still have something misconfigured in DTC between the servers,
but
> I can't figure out what? Any ideas anyone? Thanks in advance.
>
Network access to MSDTC is disabled by default on a Windows 2003 Server
machine.
http://blogs.msdn.com/mab/archive/2.../30/508273.aspx|||True, and we have it enabled. This has to be something more subtile than
that. Both these machines participate in other DTC activity with other
servers, they just don't want to play nice together in this one specific
incident. As I mentioned, I can comment out the onbe line and get a correct
response. It's only when I try to return the result set back into a table
variable that I get the failure. Thanks for the response.
"Tracy McKibben" wrote:

> Arghknork wrote:
> Network access to MSDTC is disabled by default on a Windows 2003 Server
> machine.
> http://blogs.msdn.com/mab/archive/2.../30/508273.aspx
>|||True, and we have it enabled. This has to be something more subtile than
that. Both these machines participate in other DTC activity with other
servers, they just don't want to play nice together in this one specific
incident. As I mentioned, I can comment out the onbe line and get a correct
response. It's only when I try to return the result set back into a table
variable that I get the failure. Thanks for the response.
"Tracy McKibben" wrote:

> Arghknork wrote:
> Network access to MSDTC is disabled by default on a Windows 2003 Server
> machine.
> http://blogs.msdn.com/mab/archive/2.../30/508273.aspx
>

DTC Problem - Unable to begin a transaction

I have a strange one. I have 2 Win2K3 servers, one running SQL 2K5 and the
other 2K SP4. From the 2K5 SQL Server I issue the following query ...
declare @.tmpStr varchar(2000);
declare @.ib table (EventType nvarchar(30), Parameters int, EventInfo
nvarchar(255));
set @.tmpstr = 'exec(''dbcc inputbuffer(71) WITH NO_INFOMSGS'') at
[SQL200Server];';
insert into @.ib
exec (@.tmpStr);
and I get the following error messages ...
OLE DB provider "SQLNCLI" for linked server "SQL2000Server" returned message
"No transaction is active.".
Msg 7391, Level 16, State 2, Line 1
The operation could not be performed because OLE DB provider "SQLNCLI" for
linked server "SQL2000Server" was unable to begin a distributed transaction.
If I simply comment out the 'insert into @.ib' line, it works fine. We
apparently still have something misconfigured in DTC between the servers, but
I can't figure out what? Any ideas anyone? Thanks in advance.Arghknork wrote:
> If I simply comment out the 'insert into @.ib' line, it works fine. We
> apparently still have something misconfigured in DTC between the servers, but
> I can't figure out what? Any ideas anyone? Thanks in advance.
>
Network access to MSDTC is disabled by default on a Windows 2003 Server
machine.
http://blogs.msdn.com/mab/archive/2005/12/30/508273.aspx|||True, and we have it enabled. This has to be something more subtile than
that. Both these machines participate in other DTC activity with other
servers, they just don't want to play nice together in this one specific
incident. As I mentioned, I can comment out the onbe line and get a correct
response. It's only when I try to return the result set back into a table
variable that I get the failure. Thanks for the response.
"Tracy McKibben" wrote:
> Arghknork wrote:
> > If I simply comment out the 'insert into @.ib' line, it works fine. We
> > apparently still have something misconfigured in DTC between the servers, but
> > I can't figure out what? Any ideas anyone? Thanks in advance.
> >
> >
> Network access to MSDTC is disabled by default on a Windows 2003 Server
> machine.
> http://blogs.msdn.com/mab/archive/2005/12/30/508273.aspx
>

DTC Error and unresolved SQL transaction

I have a procedure that reads data from linked server, a SQL2005 box, and
writes a row in a SQL2000 database. This procedure and configuration have
been working successfully for several years. This Sunday at 4am, this
procedure failed to complete, leaving an unresolved transaction. The symptom
is an insert on this table will timeout and fail because the unresolved
transaction has a lock on the table, and it shows as a blocking transaction.
Otherwise the database is functional and responsive. I have tried to KILL the
unresponsive process, but it wont clear, and just reads "KILLED/ROLLED BACK"
under the Activity Monitor command column.
I had this same problem last weekend, and re-starting the SQL Server Service
resolved the transaction. However, this is not a viable option during
production hours.
I tried using "KILL 51 WITH STATUSONLY", and it returned:
SPID 51: transaction rollback in progress. Estimated rollback completion:
100%. Estimated time remaining: 0 seconds.
I tried using KILL "51457D54-4FD7-408A-B5CA-AFF33D601D00"
It it cam back with:
Server: Msg 6114, Level 16, State 1, Line 1
Distributed transaction with UOW {51457D54-4FD7-408A-B5CA-AFF33D601D00} is
being used by another user. KILL command failed.
My two questions are:
1) Is there anyway to clear this blocking transaction short of re-starting
the SQL Server?
2) Is there anyway to figure out the root cause of the problem? I believe it
is some sort of MSDTC issue, that seems to only happen early on Sunday
mornings.
The following DTC error happened at exactly the same timestamp as the SQL
procedure was executed.
___________________________________________
Application Event Log Error
___________________________________________
Date7/1/2007 4:09:31 AM
LogWindows NT (Application)
SourceMSDTC
Category(3)
Event3221229829
ComputerSERVER002
Message
The description for Event ID '-1073737467' in Source 'MSDTC' cannot be
found. The local computer may not have the necessary registry information or
message DLL files to display the message, or you may not have permission to
access them. The following information is part of the
event:'.\iomgrclt.cpp:204, Pid: 1300, CmdLine: C:\WINNT\System32\msdtc.exe'
___________________________________________
Thank you in advance,
Ken
Hi Ken
"KenL" wrote:

> I have a procedure that reads data from linked server, a SQL2005 box, and
> writes a row in a SQL2000 database. This procedure and configuration have
> been working successfully for several years. This Sunday at 4am, this
> procedure failed to complete, leaving an unresolved transaction. The symptom
> is an insert on this table will timeout and fail because the unresolved
> transaction has a lock on the table, and it shows as a blocking transaction.
> Otherwise the database is functional and responsive. I have tried to KILL the
> unresponsive process, but it wont clear, and just reads "KILLED/ROLLED BACK"
> under the Activity Monitor command column.
> I had this same problem last weekend, and re-starting the SQL Server Service
> resolved the transaction. However, this is not a viable option during
> production hours.
> I tried using "KILL 51 WITH STATUSONLY", and it returned:
> SPID 51: transaction rollback in progress. Estimated rollback completion:
> 100%. Estimated time remaining: 0 seconds.
> I tried using KILL "51457D54-4FD7-408A-B5CA-AFF33D601D00"
> It it cam back with:
> Server: Msg 6114, Level 16, State 1, Line 1
> Distributed transaction with UOW {51457D54-4FD7-408A-B5CA-AFF33D601D00} is
> being used by another user. KILL command failed.
> My two questions are:
> 1) Is there anyway to clear this blocking transaction short of re-starting
> the SQL Server?
> 2) Is there anyway to figure out the root cause of the problem? I believe it
> is some sort of MSDTC issue, that seems to only happen early on Sunday
> mornings.
> The following DTC error happened at exactly the same timestamp as the SQL
> procedure was executed.
> ___________________________________________
> Application Event Log Error
> ___________________________________________
> Date7/1/2007 4:09:31 AM
> LogWindows NT (Application)
> SourceMSDTC
> Category(3)
> Event3221229829
> ComputerSERVER002
> Message
> The description for Event ID '-1073737467' in Source 'MSDTC' cannot be
> found. The local computer may not have the necessary registry information or
> message DLL files to display the message, or you may not have permission to
> access them. The following information is part of the
> event:'.\iomgrclt.cpp:204, Pid: 1300, CmdLine: C:\WINNT\System32\msdtc.exe'
> ___________________________________________
> Thank you in advance,
> Ken
I am not a MSDTC expert!!! Which process did you kill? I would expect a
process on the remote and local (originator) machines, and if there was an
order to be killed then local would be the first. If you stopped the DTC
services (NET STOP MSDTC) it should also rollback, but all distributed
transactions would be affected.
Is this the only time distributed transaction are used? If not then it would
narrow the issue down to either something with the process or something that
happens at that time. If the process is scheduled and works at other times
then it would rule the process out. If it is something that happens at a
specific time, check things like firewalls or antivirus updates/scans etc.
http://support.microsoft.com/default.aspx/kb/306843
Also look for blocking occuring during the process and how you handle errors
such as deadlocks in the code.
You could use DTCTester http://support.microsoft.com/kb/293799 or DTCPing to
check that DTC works ok.
John
|||Thank you for the response John.
<Is this the only time distributed transaction are used?
No, there are many procedures on this server that link to databases on
another server. The stored procedure that is failing runs hundreds of times
in a day. It had been reliable for years, up until last Sunday and this
Sunday when I have seen the two failures
<Which process did you kill?
I killed the spid on the SQL server initiating the link
I will review the kb's you referenced
Thanks,
Ken
"John Bell" wrote:

> Hi Ken
> "KenL" wrote:
>
> I am not a MSDTC expert!!! Which process did you kill? I would expect a
> process on the remote and local (originator) machines, and if there was an
> order to be killed then local would be the first. If you stopped the DTC
> services (NET STOP MSDTC) it should also rollback, but all distributed
> transactions would be affected.
> Is this the only time distributed transaction are used? If not then it would
> narrow the issue down to either something with the process or something that
> happens at that time. If the process is scheduled and works at other times
> then it would rule the process out. If it is something that happens at a
> specific time, check things like firewalls or antivirus updates/scans etc.
> http://support.microsoft.com/default.aspx/kb/306843
> Also look for blocking occuring during the process and how you handle errors
> such as deadlocks in the code.
> You could use DTCTester http://support.microsoft.com/kb/293799 or DTCPing to
> check that DTC works ok.
> John

Friday, February 17, 2012

DTC Error and unresolved SQL transaction

I have a procedure that reads data from linked server, a SQL2005 box, and
writes a row in a SQL2000 database. This procedure and configuration have
been working successfully for several years. This Sunday at 4am, this
procedure failed to complete, leaving an unresolved transaction. The symptom
is an insert on this table will timeout and fail because the unresolved
transaction has a lock on the table, and it shows as a blocking transaction.
Otherwise the database is functional and responsive. I have tried to KILL th
e
unresponsive process, but it wont clear, and just reads "KILLED/ROLLED BACK"
under the Activity Monitor command column.
I had this same problem last weekend, and re-starting the SQL Server Service
resolved the transaction. However, this is not a viable option during
production hours.
I tried using "KILL 51 WITH STATUSONLY", and it returned:
SPID 51: transaction rollback in progress. Estimated rollback completion:
100%. Estimated time remaining: 0 seconds.
I tried using KILL "51457D54-4FD7-408A-B5CA-AFF33D601D00"
It it cam back with:
Server: Msg 6114, Level 16, State 1, Line 1
Distributed transaction with UOW {51457D54-4FD7-408A-B5CA-AFF33D601D00}
is
being used by another user. KILL command failed.
My two questions are:
1) Is there anyway to clear this blocking transaction short of re-starting
the SQL Server?
2) Is there anyway to figure out the root cause of the problem? I believe it
is some sort of MSDTC issue, that seems to only happen early on Sunday
mornings.
The following DTC error happened at exactly the same timestamp as the SQL
procedure was executed.
________________________________________
___
Application Event Log Error
________________________________________
___
Date 7/1/2007 4:09:31 AM
Log Windows NT (Application)
Source MSDTC
Category (3)
Event 3221229829
Computer SERVER002
Message
The description for Event ID '-1073737467' in Source 'MSDTC' cannot be
found. The local computer may not have the necessary registry information o
r
message DLL files to display the message, or you may not have permission to
access them. The following information is part of the
event:'.\iomgrclt.cpp:204, Pid: 1300, CmdLine: C:\WINNT\System32\msdtc.exe'
________________________________________
___
Thank you in advance,
KenHi Ken
"KenL" wrote:

> I have a procedure that reads data from linked server, a SQL2005 box, and
> writes a row in a SQL2000 database. This procedure and configuration have
> been working successfully for several years. This Sunday at 4am, this
> procedure failed to complete, leaving an unresolved transaction. The sympt
om
> is an insert on this table will timeout and fail because the unresolved
> transaction has a lock on the table, and it shows as a blocking transactio
n.
> Otherwise the database is functional and responsive. I have tried to KILL
the
> unresponsive process, but it wont clear, and just reads "KILLED/ROLLED BAC
K"
> under the Activity Monitor command column.
> I had this same problem last weekend, and re-starting the SQL Server Servi
ce
> resolved the transaction. However, this is not a viable option during
> production hours.
> I tried using "KILL 51 WITH STATUSONLY", and it returned:
> SPID 51: transaction rollback in progress. Estimated rollback completion:
> 100%. Estimated time remaining: 0 seconds.
> I tried using KILL "51457D54-4FD7-408A-B5CA-AFF33D601D00"
> It it cam back with:
> Server: Msg 6114, Level 16, State 1, Line 1
> Distributed transaction with UOW {51457D54-4FD7-408A-B5CA-AFF33D601D0
0} is
> being used by another user. KILL command failed.
> My two questions are:
> 1) Is there anyway to clear this blocking transaction short of re-starting
> the SQL Server?
> 2) Is there anyway to figure out the root cause of the problem? I believe
it
> is some sort of MSDTC issue, that seems to only happen early on Sunday
> mornings.
> The following DTC error happened at exactly the same timestamp as the SQL
> procedure was executed.
> ________________________________________
___
> Application Event Log Error
> ________________________________________
___
> Date 7/1/2007 4:09:31 AM
> Log Windows NT (Application)
> Source MSDTC
> Category (3)
> Event 3221229829
> Computer SERVER002
> Message
> The description for Event ID '-1073737467' in Source 'MSDTC' cannot be
> found. The local computer may not have the necessary registry information
or
> message DLL files to display the message, or you may not have permission t
o
> access them. The following information is part of the
> event:'.\iomgrclt.cpp:204, Pid: 1300, CmdLine: C:\WINNT\System32\msdtc.exe
'
> ________________________________________
___
> Thank you in advance,
> Ken
I am not a MSDTC expert!!! Which process did you kill? I would expect a
process on the remote and local (originator) machines, and if there was an
order to be killed then local would be the first. If you stopped the DTC
services (NET STOP MSDTC) it should also rollback, but all distributed
transactions would be affected.
Is this the only time distributed transaction are used? If not then it would
narrow the issue down to either something with the process or something that
happens at that time. If the process is scheduled and works at other times
then it would rule the process out. If it is something that happens at a
specific time, check things like firewalls or antivirus updates/scans etc.
http://support.microsoft.com/default.aspx/kb/306843
Also look for blocking occuring during the process and how you handle errors
such as deadlocks in the code.
You could use DTCTester http://support.microsoft.com/kb/293799 or DTCPing to
check that DTC works ok.
John|||Thank you for the response John.
<Is this the only time distributed transaction are used?
No, there are many procedures on this server that link to databases on
another server. The stored procedure that is failing runs hundreds of times
in a day. It had been reliable for years, up until last Sunday and this
Sunday when I have seen the two failures
<Which process did you kill?
I killed the spid on the SQL server initiating the link
I will review the kb's you referenced
Thanks,
Ken
"John Bell" wrote:

> Hi Ken
> "KenL" wrote:
>
> I am not a MSDTC expert!!! Which process did you kill? I would expect a
> process on the remote and local (originator) machines, and if there was an
> order to be killed then local would be the first. If you stopped the DTC
> services (NET STOP MSDTC) it should also rollback, but all distributed
> transactions would be affected.
> Is this the only time distributed transaction are used? If not then it wou
ld
> narrow the issue down to either something with the process or something th
at
> happens at that time. If the process is scheduled and works at other times
> then it would rule the process out. If it is something that happens at a
> specific time, check things like firewalls or antivirus updates/scans etc.
> http://support.microsoft.com/default.aspx/kb/306843
> Also look for blocking occuring during the process and how you handle erro
rs
> such as deadlocks in the code.
> You could use DTCTester http://support.microsoft.com/kb/293799 or DTCPing
to
> check that DTC works ok.
> John

DTC Error and unresolved SQL transaction

I have a procedure that reads data from linked server, a SQL2005 box, and
writes a row in a SQL2000 database. This procedure and configuration have
been working successfully for several years. This Sunday at 4am, this
procedure failed to complete, leaving an unresolved transaction. The symptom
is an insert on this table will timeout and fail because the unresolved
transaction has a lock on the table, and it shows as a blocking transaction.
Otherwise the database is functional and responsive. I have tried to KILL the
unresponsive process, but it wont clear, and just reads "KILLED/ROLLED BACK"
under the Activity Monitor command column.
I had this same problem last weekend, and re-starting the SQL Server Service
resolved the transaction. However, this is not a viable option during
production hours.
I tried using "KILL 51 WITH STATUSONLY", and it returned:
SPID 51: transaction rollback in progress. Estimated rollback completion:
100%. Estimated time remaining: 0 seconds.
I tried using KILL "51457D54-4FD7-408A-B5CA-AFF33D601D00"
It it cam back with:
Server: Msg 6114, Level 16, State 1, Line 1
Distributed transaction with UOW {51457D54-4FD7-408A-B5CA-AFF33D601D00} is
being used by another user. KILL command failed.
My two questions are:
1) Is there anyway to clear this blocking transaction short of re-starting
the SQL Server?
2) Is there anyway to figure out the root cause of the problem? I believe it
is some sort of MSDTC issue, that seems to only happen early on Sunday
mornings.
The following DTC error happened at exactly the same timestamp as the SQL
procedure was executed.
___________________________________________
Application Event Log Error
___________________________________________
Date 7/1/2007 4:09:31 AM
Log Windows NT (Application)
Source MSDTC
Category (3)
Event 3221229829
Computer SERVER002
Message
The description for Event ID '-1073737467' in Source 'MSDTC' cannot be
found. The local computer may not have the necessary registry information or
message DLL files to display the message, or you may not have permission to
access them. The following information is part of the
event:'.\iomgrclt.cpp:204, Pid: 1300, CmdLine: C:\WINNT\System32\msdtc.exe'
___________________________________________
Thank you in advance,
KenHi Ken
"KenL" wrote:
> I have a procedure that reads data from linked server, a SQL2005 box, and
> writes a row in a SQL2000 database. This procedure and configuration have
> been working successfully for several years. This Sunday at 4am, this
> procedure failed to complete, leaving an unresolved transaction. The symptom
> is an insert on this table will timeout and fail because the unresolved
> transaction has a lock on the table, and it shows as a blocking transaction.
> Otherwise the database is functional and responsive. I have tried to KILL the
> unresponsive process, but it wont clear, and just reads "KILLED/ROLLED BACK"
> under the Activity Monitor command column.
> I had this same problem last weekend, and re-starting the SQL Server Service
> resolved the transaction. However, this is not a viable option during
> production hours.
> I tried using "KILL 51 WITH STATUSONLY", and it returned:
> SPID 51: transaction rollback in progress. Estimated rollback completion:
> 100%. Estimated time remaining: 0 seconds.
> I tried using KILL "51457D54-4FD7-408A-B5CA-AFF33D601D00"
> It it cam back with:
> Server: Msg 6114, Level 16, State 1, Line 1
> Distributed transaction with UOW {51457D54-4FD7-408A-B5CA-AFF33D601D00} is
> being used by another user. KILL command failed.
> My two questions are:
> 1) Is there anyway to clear this blocking transaction short of re-starting
> the SQL Server?
> 2) Is there anyway to figure out the root cause of the problem? I believe it
> is some sort of MSDTC issue, that seems to only happen early on Sunday
> mornings.
> The following DTC error happened at exactly the same timestamp as the SQL
> procedure was executed.
> ___________________________________________
> Application Event Log Error
> ___________________________________________
> Date 7/1/2007 4:09:31 AM
> Log Windows NT (Application)
> Source MSDTC
> Category (3)
> Event 3221229829
> Computer SERVER002
> Message
> The description for Event ID '-1073737467' in Source 'MSDTC' cannot be
> found. The local computer may not have the necessary registry information or
> message DLL files to display the message, or you may not have permission to
> access them. The following information is part of the
> event:'.\iomgrclt.cpp:204, Pid: 1300, CmdLine: C:\WINNT\System32\msdtc.exe'
> ___________________________________________
> Thank you in advance,
> Ken
I am not a MSDTC expert!!! Which process did you kill? I would expect a
process on the remote and local (originator) machines, and if there was an
order to be killed then local would be the first. If you stopped the DTC
services (NET STOP MSDTC) it should also rollback, but all distributed
transactions would be affected.
Is this the only time distributed transaction are used? If not then it would
narrow the issue down to either something with the process or something that
happens at that time. If the process is scheduled and works at other times
then it would rule the process out. If it is something that happens at a
specific time, check things like firewalls or antivirus updates/scans etc.
http://support.microsoft.com/default.aspx/kb/306843
Also look for blocking occuring during the process and how you handle errors
such as deadlocks in the code.
You could use DTCTester http://support.microsoft.com/kb/293799 or DTCPing to
check that DTC works ok.
John|||Thank you for the response John.
<Is this the only time distributed transaction are used?
No, there are many procedures on this server that link to databases on
another server. The stored procedure that is failing runs hundreds of times
in a day. It had been reliable for years, up until last Sunday and this
Sunday when I have seen the two failures
<Which process did you kill?
I killed the spid on the SQL server initiating the link
I will review the kb's you referenced
Thanks,
Ken
"John Bell" wrote:
> Hi Ken
> "KenL" wrote:
> > I have a procedure that reads data from linked server, a SQL2005 box, and
> > writes a row in a SQL2000 database. This procedure and configuration have
> > been working successfully for several years. This Sunday at 4am, this
> > procedure failed to complete, leaving an unresolved transaction. The symptom
> > is an insert on this table will timeout and fail because the unresolved
> > transaction has a lock on the table, and it shows as a blocking transaction.
> > Otherwise the database is functional and responsive. I have tried to KILL the
> > unresponsive process, but it wont clear, and just reads "KILLED/ROLLED BACK"
> > under the Activity Monitor command column.
> > I had this same problem last weekend, and re-starting the SQL Server Service
> > resolved the transaction. However, this is not a viable option during
> > production hours.
> >
> > I tried using "KILL 51 WITH STATUSONLY", and it returned:
> > SPID 51: transaction rollback in progress. Estimated rollback completion:
> > 100%. Estimated time remaining: 0 seconds.
> >
> > I tried using KILL "51457D54-4FD7-408A-B5CA-AFF33D601D00"
> > It it cam back with:
> > Server: Msg 6114, Level 16, State 1, Line 1
> > Distributed transaction with UOW {51457D54-4FD7-408A-B5CA-AFF33D601D00} is
> > being used by another user. KILL command failed.
> >
> > My two questions are:
> > 1) Is there anyway to clear this blocking transaction short of re-starting
> > the SQL Server?
> > 2) Is there anyway to figure out the root cause of the problem? I believe it
> > is some sort of MSDTC issue, that seems to only happen early on Sunday
> > mornings.
> >
> > The following DTC error happened at exactly the same timestamp as the SQL
> > procedure was executed.
> > ___________________________________________
> > Application Event Log Error
> > ___________________________________________
> > Date 7/1/2007 4:09:31 AM
> > Log Windows NT (Application)
> >
> > Source MSDTC
> > Category (3)
> > Event 3221229829
> > Computer SERVER002
> >
> > Message
> > The description for Event ID '-1073737467' in Source 'MSDTC' cannot be
> > found. The local computer may not have the necessary registry information or
> > message DLL files to display the message, or you may not have permission to
> > access them. The following information is part of the
> > event:'.\iomgrclt.cpp:204, Pid: 1300, CmdLine: C:\WINNT\System32\msdtc.exe'
> > ___________________________________________
> >
> > Thank you in advance,
> > Ken
> I am not a MSDTC expert!!! Which process did you kill? I would expect a
> process on the remote and local (originator) machines, and if there was an
> order to be killed then local would be the first. If you stopped the DTC
> services (NET STOP MSDTC) it should also rollback, but all distributed
> transactions would be affected.
> Is this the only time distributed transaction are used? If not then it would
> narrow the issue down to either something with the process or something that
> happens at that time. If the process is scheduled and works at other times
> then it would rule the process out. If it is something that happens at a
> specific time, check things like firewalls or antivirus updates/scans etc.
> http://support.microsoft.com/default.aspx/kb/306843
> Also look for blocking occuring during the process and how you handle errors
> such as deadlocks in the code.
> You could use DTCTester http://support.microsoft.com/kb/293799 or DTCPing to
> check that DTC works ok.
> John

DTC Error

Hi there,
We are having a issue with MSDTC saying that the DTC service is unavailable
when runing a distributed transaction between two WIN2003 servers running
SQL 2000 SP3. Have read all the articles but I am not having much sucess.
Have enabled network DTC access on both servers. The service account is
running under a domain admin account. It seems that one server is the common
donominator as all distributed transactions with this server fails. We read
an article that said to add the reg value:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\TurnOf fRpcSecurity = 1, this had
the effect of changing the error message to:
Server: Msg 7391, Level 16, State 1, Line 2
The operation could not be performed because the OLE DB provider 'SQLOLEDB'
was unable to begin a distributed transaction.
[OLE/DB provider returned message: New transaction cannot enlist in the
specified transaction coordinator. ]
OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
ITransactionJoin::JoinTransaction returned 0x8004d00a].
Not sure where to look next, any assistance will be appreciated.
Thanks
Devron Blatchford.
Hi,
I had a similar problem with my Distributed transactions and the problem was
the name resolution within the two servers. I downloaded the MS DTCPing.exe
from microsoft and i found that there wasn't the appropriate name resolution.
Also, if your servers aren't in the same domain, you must trust these domains.
Download the MS DTCPing.exe from the following article
http://support.microsoft.com/default...b;en-us;306843
Andreas
"Devron Blatchford" wrote:

> Hi there,
> We are having a issue with MSDTC saying that the DTC service is unavailable
> when runing a distributed transaction between two WIN2003 servers running
> SQL 2000 SP3. Have read all the articles but I am not having much sucess.
> Have enabled network DTC access on both servers. The service account is
> running under a domain admin account. It seems that one server is the common
> donominator as all distributed transactions with this server fails. We read
> an article that said to add the reg value:
> HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\TurnOf fRpcSecurity = 1, this had
> the effect of changing the error message to:
> Server: Msg 7391, Level 16, State 1, Line 2
> The operation could not be performed because the OLE DB provider 'SQLOLEDB'
> was unable to begin a distributed transaction.
> [OLE/DB provider returned message: New transaction cannot enlist in the
> specified transaction coordinator. ]
> OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
> ITransactionJoin::JoinTransaction returned 0x8004d00a].
> Not sure where to look next, any assistance will be appreciated.
> Thanks
> Devron Blatchford.
>
>

DTC Error

Hi all,
I built an ASP.Net application. The asp .net application uses distributed
transactions. I add "Transaction='Required'" for every data processing pages
and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit or
abort the transaction.
When the IIS Server and SQL Server are on the same machine, this is no
problem. But when the
IIS server and SQL server are on different machines, error will occurs and
saying that "DTC can not support remote/network transactions".
How the solve this problem?
Thanks!
KevinIf you are running Win2K3, DTC is disabled for network access by default.
Check out:
How to enable network DTC access in Windows Server 2003
http://support.microsoft.com/default.aspx?scid=kb;en-us;817064
Good luck.
Anthony Thomas
"Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
Hi all,
I built an ASP.Net application. The asp .net application uses distributed
transactions. I add "Transaction='Required'" for every data processing pages
and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit or
abort the transaction.
When the IIS Server and SQL Server are on the same machine, this is no
problem. But when the
IIS server and SQL server are on different machines, error will occurs and
saying that "DTC can not support remote/network transactions".
How the solve this problem?
Thanks!
Kevin|||Thanks Thomas,
Actually I have already installed Network DTC.
The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
machines belong to different domain. Do I need to setup something?
Thanks
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com> дÈëÏûÏ¢ÐÂÎÅ:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...
> If you are running Win2K3, DTC is disabled for network access by default.
> Check out:
> How to enable network DTC access in Windows Server 2003
> http://support.microsoft.com/default.aspx?scid=kb;en-us;817064
> Good luck.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
> Hi all,
> I built an ASP.Net application. The asp .net application uses distributed
> transactions. I add "Transaction='Required'" for every data processing
> pages
> and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit
> or
> abort the transaction.
> When the IIS Server and SQL Server are on the same machine, this is no
> problem. But when the
> IIS server and SQL server are on different machines, error will occurs and
> saying that "DTC can not support remote/network transactions".
> How the solve this problem?
> Thanks!
> Kevin
>|||That little piece of info would have been helpful.
Here is a way to handle non-domain communication.
HOWTO: Enable DTC Between Web Servers and SQL Servers Running Windows Server
2003
http://www.support.microsoft.com/?kbid=555017&SD=tech
I know I've seen articles on how to set this up between two different
domains, same forest and different forests, but can't find it at the moment.
However, the following may prove useful to you as well,
How To Troubleshoot MS DTC Firewall Issues
http://support.microsoft.com/default.aspx?scid=kb;en-us;306843
Good luck.
Anthony Thomas
"Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
news:Oe7mPtUJFHA.1172@.TK2MSFTNGP12.phx.gbl...
Thanks Thomas,
Actually I have already installed Network DTC.
The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
machines belong to different domain. Do I need to setup something?
Thanks
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com>
дÈëÏûÏ¢ÐÂÎÅ:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...
> If you are running Win2K3, DTC is disabled for network access by default.
> Check out:
> How to enable network DTC access in Windows Server 2003
> http://support.microsoft.com/default.aspx?scid=kb;en-us;817064
> Good luck.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
> Hi all,
> I built an ASP.Net application. The asp .net application uses distributed
> transactions. I add "Transaction='Required'" for every data processing
> pages
> and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit
> or
> abort the transaction.
> When the IIS Server and SQL Server are on the same machine, this is no
> problem. But when the
> IIS server and SQL server are on different machines, error will occurs and
> saying that "DTC can not support remote/network transactions".
> How the solve this problem?
> Thanks!
> Kevin
>|||Thomas,
Thanks for your reply, I solved my problems!
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com> дÈëÏûÏ¢ÐÂÎÅ:%230JYHoXJFHA.3596@.TK2MSFTNGP14.phx.gbl...
> That little piece of info would have been helpful.
> Here is a way to handle non-domain communication.
> HOWTO: Enable DTC Between Web Servers and SQL Servers Running Windows
> Server
> 2003
> http://www.support.microsoft.com/?kbid=555017&SD=tech
> I know I've seen articles on how to set this up between two different
> domains, same forest and different forests, but can't find it at the
> moment.
> However, the following may prove useful to you as well,
> How To Troubleshoot MS DTC Firewall Issues
> http://support.microsoft.com/default.aspx?scid=kb;en-us;306843
> Good luck.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:Oe7mPtUJFHA.1172@.TK2MSFTNGP12.phx.gbl...
> Thanks Thomas,
> Actually I have already installed Network DTC.
> The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
> machines belong to different domain. Do I need to setup something?
> Thanks
> Kevin
>
> "Anthony Thomas" <ALThomas@.kc.rr.com>
> дÈëÏûÏ¢ÐÂÎÅ:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...
>> If you are running Win2K3, DTC is disabled for network access by default.
>> Check out:
>> How to enable network DTC access in Windows Server 2003
>> http://support.microsoft.com/default.aspx?scid=kb;en-us;817064
>> Good luck.
>> Anthony Thomas
>>
>> --
>> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
>> news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
>> Hi all,
>> I built an ASP.Net application. The asp .net application uses distributed
>> transactions. I add "Transaction='Required'" for every data processing
>> pages
>> and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit
>> or
>> abort the transaction.
>> When the IIS Server and SQL Server are on the same machine, this is no
>> problem. But when the
>> IIS server and SQL server are on different machines, error will occurs
>> and
>> saying that "DTC can not support remote/network transactions".
>> How the solve this problem?
>> Thanks!
>> Kevin
>>
>|||Want to share. I'm curious how you solved it.
Thanks.
Anthony Thomas
"Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
news:uYQjZDeJFHA.484@.TK2MSFTNGP15.phx.gbl...
Thomas,
Thanks for your reply, I solved my problems!
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com>
дÈëÏûÏ¢ÐÂÎÅ:%230JYHoXJFHA.3596@.TK2MSFTNGP14.phx.gbl...
> That little piece of info would have been helpful.
> Here is a way to handle non-domain communication.
> HOWTO: Enable DTC Between Web Servers and SQL Servers Running Windows
> Server
> 2003
> http://www.support.microsoft.com/?kbid=555017&SD=tech
> I know I've seen articles on how to set this up between two different
> domains, same forest and different forests, but can't find it at the
> moment.
> However, the following may prove useful to you as well,
> How To Troubleshoot MS DTC Firewall Issues
> http://support.microsoft.com/default.aspx?scid=kb;en-us;306843
> Good luck.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:Oe7mPtUJFHA.1172@.TK2MSFTNGP12.phx.gbl...
> Thanks Thomas,
> Actually I have already installed Network DTC.
> The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
> machines belong to different domain. Do I need to setup something?
> Thanks
> Kevin
>
> "Anthony Thomas" <ALThomas@.kc.rr.com>
> дÈëÏûÏ¢ÐÂÎÅ:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...
>> If you are running Win2K3, DTC is disabled for network access by default.
>> Check out:
>> How to enable network DTC access in Windows Server 2003
>> http://support.microsoft.com/default.aspx?scid=kb;en-us;817064
>> Good luck.
>> Anthony Thomas
>>
>> --
>> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
>> news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
>> Hi all,
>> I built an ASP.Net application. The asp .net application uses distributed
>> transactions. I add "Transaction='Required'" for every data processing
>> pages
>> and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit
>> or
>> abort the transaction.
>> When the IIS Server and SQL Server are on the same machine, this is no
>> problem. But when the
>> IIS server and SQL server are on different machines, error will occurs
>> and
>> saying that "DTC can not support remote/network transactions".
>> How the solve this problem?
>> Thanks!
>> Kevin
>>
>|||Hi Thomas,
I add the following registry values, set the firewall to allow ports form
5000~5020 & 135, and then restart both computers.
Ports : REG_MULTI-SZ : 5000-5020
PortsInternetAvailable : REG_SZ : Y
UseInternetPorts : REG_SZ : Y
These information are all in the articals you have mentioned.
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com> дÈëÏûÏ¢ÐÂÎÅ:O7pSP6jJFHA.3484@.TK2MSFTNGP12.phx.gbl...
> Want to share. I'm curious how you solved it.
> Thanks.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:uYQjZDeJFHA.484@.TK2MSFTNGP15.phx.gbl...
> Thomas,
> Thanks for your reply, I solved my problems!
>
> Kevin
> "Anthony Thomas" <ALThomas@.kc.rr.com>
> дÈëÏûÏ¢ÐÂÎÅ:%230JYHoXJFHA.3596@.TK2MSFTNGP14.phx.gbl...
>> That little piece of info would have been helpful.
>> Here is a way to handle non-domain communication.
>> HOWTO: Enable DTC Between Web Servers and SQL Servers Running Windows
>> Server
>> 2003
>> http://www.support.microsoft.com/?kbid=555017&SD=tech
>> I know I've seen articles on how to set this up between two different
>> domains, same forest and different forests, but can't find it at the
>> moment.
>> However, the following may prove useful to you as well,
>> How To Troubleshoot MS DTC Firewall Issues
>> http://support.microsoft.com/default.aspx?scid=kb;en-us;306843
>> Good luck.
>> Anthony Thomas
>>
>> --
>> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
>> news:Oe7mPtUJFHA.1172@.TK2MSFTNGP12.phx.gbl...
>> Thanks Thomas,
>> Actually I have already installed Network DTC.
>> The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
>> machines belong to different domain. Do I need to setup something?
>> Thanks
>> Kevin
>>
>> "Anthony Thomas" <ALThomas@.kc.rr.com>
>> дÈëÏûÏ¢ÐÂÎÅ:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...
>> If you are running Win2K3, DTC is disabled for network access by
>> default.
>> Check out:
>> How to enable network DTC access in Windows Server 2003
>> http://support.microsoft.com/default.aspx?scid=kb;en-us;817064
>> Good luck.
>> Anthony Thomas
>>
>> --
>> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
>> news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
>> Hi all,
>> I built an ASP.Net application. The asp .net application uses
>> distributed
>> transactions. I add "Transaction='Required'" for every data processing
>> pages
>> and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to
>> commit
>> or
>> abort the transaction.
>> When the IIS Server and SQL Server are on the same machine, this is no
>> problem. But when the
>> IIS server and SQL server are on different machines, error will occurs
>> and
>> saying that "DTC can not support remote/network transactions".
>> How the solve this problem?
>> Thanks!
>> Kevin
>>
>>
>

DTC Error

Hi there,
We are having a issue with MSDTC saying that the DTC service is unavailable
when runing a distributed transaction between two WIN2003 servers running
SQL 2000 SP3. Have read all the articles but I am not having much sucess.
Have enabled network DTC access on both servers. The service account is
running under a domain admin account. It seems that one server is the common
donominator as all distributed transactions with this server fails. We read
an article that said to add the reg value:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MS
DTC\TurnOffRpcSecurity = 1, this had
the effect of changing the error message to:
Server: Msg 7391, Level 16, State 1, Line 2
The operation could not be performed because the OLE DB provider 'SQLOLEDB'
was unable to begin a distributed transaction.
[OLE/DB provider returned message: New transaction cannot enlist in the
specified transaction coordinator. ]
OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
ITransactionJoin::JoinTransaction returned 0x8004d00a].
Not sure where to look next, any assistance will be appreciated.
Thanks
Devron Blatchford.Hi,
I had a similar problem with my Distributed transactions and the problem was
the name resolution within the two servers. I downloaded the MS DTCPing.exe
from microsoft and i found that there wasn't the appropriate name resolution
.
Also, if your servers aren't in the same domain, you must trust these domain
s.
Download the MS DTCPing.exe from the following article
http://support.microsoft.com/defaul...kb;en-us;306843
Andreas
"Devron Blatchford" wrote:

> Hi there,
> We are having a issue with MSDTC saying that the DTC service is unavailab
le
> when runing a distributed transaction between two WIN2003 servers running
> SQL 2000 SP3. Have read all the articles but I am not having much sucess.
> Have enabled network DTC access on both servers. The service account is
> running under a domain admin account. It seems that one server is the comm
on
> donominator as all distributed transactions with this server fails. We rea
d
> an article that said to add the reg value:
> HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MS
DTC\TurnOffRpcSecurity = 1, this h
ad
> the effect of changing the error message to:
> Server: Msg 7391, Level 16, State 1, Line 2
> The operation could not be performed because the OLE DB provider 'SQLOLEDB
'
> was unable to begin a distributed transaction.
> [OLE/DB provider returned message: New transaction cannot enlist in th
e
> specified transaction coordinator. ]
> OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
> ITransactionJoin::JoinTransaction returned 0x8004d00a].
> Not sure where to look next, any assistance will be appreciated.
> Thanks
> Devron Blatchford.
>
>

DTC Error

Hi all,
I built an ASP.Net application. The asp .net application uses distributed
transactions. I add "Transaction='Required'" for every data processing pages
and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit or
abort the transaction.
When the IIS Server and SQL Server are on the same machine, this is no
problem. But when the
IIS server and SQL server are on different machines, error will occurs and
saying that "DTC can not support remote/network transactions".
How the solve this problem?
Thanks!
KevinIf you are running Win2K3, DTC is disabled for network access by default.
Check out:
How to enable network DTC access in Windows Server 2003
http://support.microsoft.com/defaul...kb;en-us;817064
Good luck.
Anthony Thomas
"Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
Hi all,
I built an ASP.Net application. The asp .net application uses distributed
transactions. I add "Transaction='Required'" for every data processing pages
and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit or
abort the transaction.
When the IIS Server and SQL Server are on the same machine, this is no
problem. But when the
IIS server and SQL server are on different machines, error will occurs and
saying that "DTC can not support remote/network transactions".
How the solve this problem?
Thanks!
Kevin|||Thanks Thomas,
Actually I have already installed Network DTC.
The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
machines belong to different domain. Do I need to setup something?
Thanks
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com> д?:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...[
vbcol=seagreen]
> If you are running Win2K3, DTC is disabled for network access by default.
> Check out:
> How to enable network DTC access in Windows Server 2003
> http://support.microsoft.com/defaul...kb;en-us;817064
> Good luck.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
> Hi all,
> I built an ASP.Net application. The asp .net application uses distributed
> transactions. I add "Transaction='Required'" for every data processing
> pages
> and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit
> or
> abort the transaction.
> When the IIS Server and SQL Server are on the same machine, this is no
> problem. But when the
> IIS server and SQL server are on different machines, error will occurs and
> saying that "DTC can not support remote/network transactions".
> How the solve this problem?
> Thanks!
> Kevin
>[/vbcol]|||That little piece of info would have been helpful.
Here is a way to handle non-domain communication.
HOWTO: Enable DTC Between Web Servers and SQL Servers Running Windows Server
2003
http://www.support.microsoft.com/?kbid=555017&SD=tech
I know I've seen articles on how to set this up between two different
domains, same forest and different forests, but can't find it at the moment.
However, the following may prove useful to you as well,
How To Troubleshoot MS DTC Firewall Issues
http://support.microsoft.com/defaul...kb;en-us;306843
Good luck.
Anthony Thomas
"Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
news:Oe7mPtUJFHA.1172@.TK2MSFTNGP12.phx.gbl...
Thanks Thomas,
Actually I have already installed Network DTC.
The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
machines belong to different domain. Do I need to setup something?
Thanks
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com>
д?:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...
> If you are running Win2K3, DTC is disabled for network access by default.
> Check out:
> How to enable network DTC access in Windows Server 2003
> http://support.microsoft.com/defaul...kb;en-us;817064
> Good luck.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:einMubSJFHA.2736@.TK2MSFTNGP09.phx.gbl...
> Hi all,
> I built an ASP.Net application. The asp .net application uses distributed
> transactions. I add "Transaction='Required'" for every data processing
> pages
> and use "ContextUtil.SetComplete()" or "ContextUtil.SetAbort()" to commit
> or
> abort the transaction.
> When the IIS Server and SQL Server are on the same machine, this is no
> problem. But when the
> IIS server and SQL server are on different machines, error will occurs and
> saying that "DTC can not support remote/network transactions".
> How the solve this problem?
> Thanks!
> Kevin
>|||Thomas,
Thanks for your reply, I solved my problems!
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com> д?:%230JYHoXJFHA.3596@.TK2MSFTNGP14.phx.gbl..
.
> That little piece of info would have been helpful.
> Here is a way to handle non-domain communication.
> HOWTO: Enable DTC Between Web Servers and SQL Servers Running Windows
> Server
> 2003
> http://www.support.microsoft.com/?kbid=555017&SD=tech
> I know I've seen articles on how to set this up between two different
> domains, same forest and different forests, but can't find it at the
> moment.
> However, the following may prove useful to you as well,
> How To Troubleshoot MS DTC Firewall Issues
> http://support.microsoft.com/defaul...kb;en-us;306843
> Good luck.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:Oe7mPtUJFHA.1172@.TK2MSFTNGP12.phx.gbl...
> Thanks Thomas,
> Actually I have already installed Network DTC.
> The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
> machines belong to different domain. Do I need to setup something?
> Thanks
> Kevin
>
> "Anthony Thomas" <ALThomas@.kc.rr.com>
> д?:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...
>|||Want to share. I'm curious how you solved it.
Thanks.
Anthony Thomas
"Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
news:uYQjZDeJFHA.484@.TK2MSFTNGP15.phx.gbl...
Thomas,
Thanks for your reply, I solved my problems!
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com>
д?:%230JYHoXJFHA.3596@.TK2MSFTNGP14.phx.gbl...
> That little piece of info would have been helpful.
> Here is a way to handle non-domain communication.
> HOWTO: Enable DTC Between Web Servers and SQL Servers Running Windows
> Server
> 2003
> http://www.support.microsoft.com/?kbid=555017&SD=tech
> I know I've seen articles on how to set this up between two different
> domains, same forest and different forests, but can't find it at the
> moment.
> However, the following may prove useful to you as well,
> How To Troubleshoot MS DTC Firewall Issues
> http://support.microsoft.com/defaul...kb;en-us;306843
> Good luck.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:Oe7mPtUJFHA.1172@.TK2MSFTNGP12.phx.gbl...
> Thanks Thomas,
> Actually I have already installed Network DTC.
> The IIS Machine is WindowsXP, the SQL machine is Windows2003, the two
> machines belong to different domain. Do I need to setup something?
> Thanks
> Kevin
>
> "Anthony Thomas" <ALThomas@.kc.rr.com>
> д?:u9Kfi4SJFHA.2980@.TK2MSFTNGP10.phx.gbl...
>|||Hi Thomas,
I add the following registry values, set the firewall to allow ports form
5000~5020 & 135, and then restart both computers.
Ports : REG_MULTI-SZ : 5000-5020
PortsInternetAvailable : REG_SZ : Y
UseInternetPorts : REG_SZ : Y
These information are all in the articals you have mentioned.
Kevin
"Anthony Thomas" <ALThomas@.kc.rr.com> д?:O7pSP6jJFHA.3484@.TK2MSFTNGP12.phx.gbl...[
vbcol=seagreen]
> Want to share. I'm curious how you solved it.
> Thanks.
> Anthony Thomas
>
> --
> "Kevin Dai" <Kevin_Dzy@.Hotmail.com> wrote in message
> news:uYQjZDeJFHA.484@.TK2MSFTNGP15.phx.gbl...
> Thomas,
> Thanks for your reply, I solved my problems!
>
> Kevin
> "Anthony Thomas" <ALThomas@.kc.rr.com>
> д?:%230JYHoXJFHA.3596@.TK2MSFTNGP14.phx.gbl...
>[/vbcol]