TransactionScope fails
Hi,
I am using transactionScope and it is failing. I tried DTC Ping as was recommended in another post and it fails to. On the computer I try to ping:
++++++++++++Start Reverse Bind Test+++++++++++++
Received Bind call from DEVELOP
Trying Reverse Bind to DEVELOP
Error(0x2AFC) at nameping.cpp @62
-->gethostbyaddr
-->11004(The requested name is valid, but no data of the requested type was founError(0x6BA) at ServerManager.cpp @453
-->RPC reverse BIND failed
-->1722(The RPC server is unavailable.)
Reverse Binding to DEVELOP Failed
Session Down
And on the computer doing the pinging:
++++++++++++Validating Remote Computer Name++++++++++++
Please refer to following log file for details:
C:\dtcping\DEVELOP2916.log
Invoking RPC method on Database
RPC test is successful
++++++++++++RPC test completed+++++++++++++++
++++++++++++Start DTC Binding Test +++++++++++++
Trying Bind to Database
Binding call to Database Failed
Session Down
RPC and RPC locater are running on both computers. Any ideas?
Steve
Hello Steve,
I was wondering if you had received any help from this forum post?
I too am having troubles with this DTC / RPC data ping test - and I am thinking that mine might be to do with Firewwall name resolution (as it has to be [servername.domain.co.uk] for example)... anyway - have you tried mucking about with DCOM security (dcomcnfg) from the 2 machines in question?
If you launch dcomcfg and right click on the MY Computer section and then select the MSDTC tab then hit the security button (bottom left) then you can activate and deactivate remote clients and network access - are yours unchecked?
My problem is a -->RPC reverse BIND failed -->5(Access is denied.) error - if anyone has any ideas?
MIke
I have not gotten any help.
I have completely disabled security and allow anything. I am behind a firewall so not a big deal for testing.
Does anyone know about this?
Steve
Hi Steve, from the looks of it you're trying a cross-machine topology correct? I notice you mention a lot of work you've done to the firewalls but not anything related to msdtc's security configuration on each machine.
Can you try enabling MSDTC's security settings (described in detail here: http://blogs.msdn.com/florinlazar/archive/2004/06/18/159127.aspx) and see if DTCPing works for you.
In particular you're going to want to run 'dcomcnfg', expand the Component Services section, expand Computers, right click My Computer and select the MSDTC tab. From there click Security Configuration and let us know if modifying those settings works for you.
Thanks for the reply Jesse.
I have configured the MSDTC security.
Here are my settings:
Network DTC Access: Checked
Allow Remote Clients: Checked
All Remote Admininistration: Checked
Allow Inbound: Checked
Allow Outbound: Checked;
No Authenication Required: Selected
Enable TIP Transactions: Checked
Enable XA Transactions: Checked
Account: NT Authority\NetworkService
The configuration is the same on all machines.
Steve
Hi Steve,
Do you have the firewall enabled on these machines? Did you test your scenarios with the firewall turned off on both machines, just to narrow down the problem?
If the firewall is already off, can you ping the machines from each other using the computer name?
I don't recommend enabling TIP Transactions unless you really need TIP transactions.
HTH
The firewall is off. Ping, RDP, SQL all work fine across both machines. Its just that transactions don't work. I turned of TIP transaction but it still does not work. Thanks.
Steve
Hi Steve,
These network issues are not necessary related to MSDTC itself. As you can see from the DTCPing trace, the RPC call doesn't get through between the two machines.
Can you give more details about your config? What operating systems do you use, are the machines part of a Windows Domain?
HI,
After all the trouble and time I Spent in figuring this out I finally cracked it! I thought I would share it with you in case it helps you out.
As I was across untrusted domains I had to enter a value in to the HOSTS file (Not, as the MS Support pages offer, the LMHOST) 2 lines that simply read <IPADDRESSS> < MACHINENAMME> and <IP ADDRESS> <FULLY QUALIFIED MACHINE NAME> once I did this cross transactions started to work.
I found DTCPING a little misleading as the errors I got seemed to imply security problems, hence my mucking around with DCOMCNFG - athough that did help, It wasn't my overall solution.
The most useful tool I found was DTCTEST http://www.sqldev.net/misc/DTCTest.htm which allowed me to check and test the actual functionality of Cross server transactions (it create a #table and inserts data then selects the data).
Cheers
Mike