Discussion:
Problem with MS DTC on Windows Server 2003
(too old to reply)
Roger Bavaud
2003-10-07 12:43:55 UTC
Permalink
Hello NG

I use a Windows Server 2003 Web Edition standalone Server as Web Server. On
this Server I have a web application running. This Web Application use some
Com+ components.
The Com+ components uses the MSDTC.

When I try to connect to the DB - I recive the following error message from
the Web Application:

User CTAdmin
Session 07.10.2003 14:31:29
Error Type Application defined Error
Error Number -2147168246
Error Source Microsoft OLE DB Provider for ODBC Drivers
Module/Function Benutzer/UserRole
Fehler [-2147168246][Microsoft OLE DB Provider for ODBC
Drivers][MTSFUNCTION/ConnectionGet] [Microsoft][ODBC SQL Server
Driver]Distributed transaction error



I can disable MSDTC on the Com+ components (Transaction support). Then the
application is working.

Also, when I run the Application on an Windows 2000 Memeber Server - MSDTC
is working.

Can anybody help me?

Regards
Roger
Darren Green
2003-10-07 12:54:23 UTC
Permalink
I assume the web and SQL are on different machines?
Is the MS DTC service running on both machines?
Can you ping by name between the machines, both ways? DTC requires name
resolution to work. Check your Hosts and LMHosts files.
Use TCP/IP for your SQL client network libaray if you can.

Is there any DTS here?
--
Darren Green
http://www.sqldts.com
Post by Roger Bavaud
Hello NG
I use a Windows Server 2003 Web Edition standalone Server as Web Server. On
this Server I have a web application running. This Web Application use some
Com+ components.
The Com+ components uses the MSDTC.
When I try to connect to the DB - I recive the following error message from
User CTAdmin
Session 07.10.2003 14:31:29
Error Type Application defined Error
Error Number -2147168246
Error Source Microsoft OLE DB Provider for ODBC Drivers
Module/Function Benutzer/UserRole
Fehler [-2147168246][Microsoft OLE DB Provider for ODBC
Drivers][MTSFUNCTION/ConnectionGet] [Microsoft][ODBC SQL Server
Driver]Distributed transaction error
I can disable MSDTC on the Com+ components (Transaction support). Then the
application is working.
Also, when I run the Application on an Windows 2000 Memeber Server - MSDTC
is working.
Can anybody help me?
Regards
Roger
Roger Bavaud
2003-10-07 13:09:13 UTC
Permalink
Yes the Web and the SQL Server are different machines.
The Service is running on both machines.
The Web Server is in a Test Lan and will be moved in a DMZ (behind the
firewall).
--> So I will try to create LMHosts files...

I use TCP/IP for the connection.
The SQL Database is running on a SQL 2000 Insatance (Port 5000).

I used the Client Network Utility to set the following:
Server Alias ETACHDB1VSO\Chronotrack
Network Library TCP/IP
Connection parameters 149.133.75.236\Chronotrack,5000
Post by Darren Green
I assume the web and SQL are on different machines?
Is the MS DTC service running on both machines?
Can you ping by name between the machines, both ways? DTC requires name
resolution to work. Check your Hosts and LMHosts files.
Use TCP/IP for your SQL client network libaray if you can.
Is there any DTS here?
--
Darren Green
http://www.sqldts.com
Post by Roger Bavaud
Hello NG
I use a Windows Server 2003 Web Edition standalone Server as Web Server.
On
Post by Roger Bavaud
this Server I have a web application running. This Web Application use
some
Post by Roger Bavaud
Com+ components.
The Com+ components uses the MSDTC.
When I try to connect to the DB - I recive the following error message
from
Post by Roger Bavaud
User CTAdmin
Session 07.10.2003 14:31:29
Error Type Application defined Error
Error Number -2147168246
Error Source Microsoft OLE DB Provider for ODBC Drivers
Module/Function Benutzer/UserRole
Fehler [-2147168246][Microsoft OLE DB Provider for ODBC
Drivers][MTSFUNCTION/ConnectionGet] [Microsoft][ODBC SQL Server
Driver]Distributed transaction error
I can disable MSDTC on the Com+ components (Transaction support). Then the
application is working.
Also, when I run the Application on an Windows 2000 Memeber Server - MSDTC
is working.
Can anybody help me?
Regards
Roger
Roger Bavaud
2003-10-07 13:50:38 UTC
Permalink
Hi,

Now I can ping both server by name... but MSDCT is not workring - Same error
message. :-(

When I use the MS test tool I recive this output:

C:\>dtctester ChronoTrack Chronotrack xxxx
Executed: dtctester
DSN: ChronoTrack
User Name: Chronotrack
Password: xxxx
tablename= #dtc19103
Creating Temp Table for Testing: #dtc19103
Warning: No Columns in Result Set From Executing: 'create table #dtc19103
(ival
int)'
Initializing DTC
Beginning DTC Transaction
Enlisting Connection in Transaction
Error:
SQLSTATE=25S12,Native error=-2147168220,msg='[Microsoft][ODBC SQL Server
Driver]
Distributed transaction error'
Error:
SQLSTATE=24000,Native error=0,msg=[Microsoft][ODBC SQL Server Driver]Invalid
cur
sor state
Typical Errors in DTC Output When
a. Firewall Has Ports Closed
-OR-
b. Bad WINS/DNS entries
-OR-
c. Misconfigured network
-OR-
d. Misconfigured SQL Server machine that has multiple netcards.
Aborting DTC Transaction
Releasing DTC Interface Pointers
Successfully Released pTransaction Pointer.
Post by Roger Bavaud
Yes the Web and the SQL Server are different machines.
The Service is running on both machines.
The Web Server is in a Test Lan and will be moved in a DMZ (behind the
firewall).
--> So I will try to create LMHosts files...
I use TCP/IP for the connection.
The SQL Database is running on a SQL 2000 Insatance (Port 5000).
Server Alias ETACHDB1VSO\Chronotrack
Network Library TCP/IP
Connection parameters 149.133.75.236\Chronotrack,5000
Post by Darren Green
I assume the web and SQL are on different machines?
Is the MS DTC service running on both machines?
Can you ping by name between the machines, both ways? DTC requires name
resolution to work. Check your Hosts and LMHosts files.
Use TCP/IP for your SQL client network libaray if you can.
Is there any DTS here?
--
Darren Green
http://www.sqldts.com
Post by Roger Bavaud
Hello NG
I use a Windows Server 2003 Web Edition standalone Server as Web Server.
On
Post by Roger Bavaud
this Server I have a web application running. This Web Application use
some
Post by Roger Bavaud
Com+ components.
The Com+ components uses the MSDTC.
When I try to connect to the DB - I recive the following error message
from
Post by Roger Bavaud
User CTAdmin
Session 07.10.2003 14:31:29
Error Type Application defined Error
Error Number -2147168246
Error Source Microsoft OLE DB Provider for ODBC Drivers
Module/Function Benutzer/UserRole
Fehler [-2147168246][Microsoft OLE DB Provider for ODBC
Drivers][MTSFUNCTION/ConnectionGet] [Microsoft][ODBC SQL Server
Driver]Distributed transaction error
I can disable MSDTC on the Com+ components (Transaction support). Then
the
Post by Darren Green
Post by Roger Bavaud
application is working.
Also, when I run the Application on an Windows 2000 Memeber Server -
MSDTC
Post by Darren Green
Post by Roger Bavaud
is working.
Can anybody help me?
Regards
Roger
Roger Bavaud
2003-10-07 14:40:43 UTC
Permalink
OK is working now :-)

The Account witch is used for the Com+ Application must be a Member of the
local Group "Network Configuarton Operarators" only local Administrator is
not enaught - Windows 2003 Security ?!?

And the Lmhosts files are also needed - Tanks @Darren Green

Regards
Roger
Post by Roger Bavaud
Hi,
Now I can ping both server by name... but MSDCT is not workring - Same error
message. :-(
C:\>dtctester ChronoTrack Chronotrack xxxx
Executed: dtctester
DSN: ChronoTrack
User Name: Chronotrack
Password: xxxx
tablename= #dtc19103
Creating Temp Table for Testing: #dtc19103
Warning: No Columns in Result Set From Executing: 'create table #dtc19103
(ival
int)'
Initializing DTC
Beginning DTC Transaction
Enlisting Connection in Transaction
SQLSTATE=25S12,Native error=-2147168220,msg='[Microsoft][ODBC SQL Server
Driver]
Distributed transaction error'
SQLSTATE=24000,Native error=0,msg=[Microsoft][ODBC SQL Server
Driver]Invalid
Post by Roger Bavaud
cur
sor state
Typical Errors in DTC Output When
a. Firewall Has Ports Closed
-OR-
b. Bad WINS/DNS entries
-OR-
c. Misconfigured network
-OR-
d. Misconfigured SQL Server machine that has multiple netcards.
Aborting DTC Transaction
Releasing DTC Interface Pointers
Successfully Released pTransaction Pointer.
Post by Roger Bavaud
Yes the Web and the SQL Server are different machines.
The Service is running on both machines.
The Web Server is in a Test Lan and will be moved in a DMZ (behind the
firewall).
--> So I will try to create LMHosts files...
I use TCP/IP for the connection.
The SQL Database is running on a SQL 2000 Insatance (Port 5000).
Server Alias ETACHDB1VSO\Chronotrack
Network Library TCP/IP
Connection parameters 149.133.75.236\Chronotrack,5000
Post by Darren Green
I assume the web and SQL are on different machines?
Is the MS DTC service running on both machines?
Can you ping by name between the machines, both ways? DTC requires name
resolution to work. Check your Hosts and LMHosts files.
Use TCP/IP for your SQL client network libaray if you can.
Is there any DTS here?
--
Darren Green
http://www.sqldts.com
Post by Roger Bavaud
Hello NG
I use a Windows Server 2003 Web Edition standalone Server as Web
Server.
Post by Roger Bavaud
Post by Darren Green
On
Post by Roger Bavaud
this Server I have a web application running. This Web Application use
some
Post by Roger Bavaud
Com+ components.
The Com+ components uses the MSDTC.
When I try to connect to the DB - I recive the following error message
from
Post by Roger Bavaud
User CTAdmin
Session 07.10.2003 14:31:29
Error Type Application defined Error
Error Number -2147168246
Error Source Microsoft OLE DB Provider for ODBC Drivers
Module/Function Benutzer/UserRole
Fehler [-2147168246][Microsoft OLE DB Provider for ODBC
Drivers][MTSFUNCTION/ConnectionGet] [Microsoft][ODBC SQL Server
Driver]Distributed transaction error
I can disable MSDTC on the Com+ components (Transaction support). Then
the
Post by Darren Green
Post by Roger Bavaud
application is working.
Also, when I run the Application on an Windows 2000 Memeber Server -
MSDTC
Post by Darren Green
Post by Roger Bavaud
is working.
Can anybody help me?
Regards
Roger
Darren Green
2003-10-07 14:49:22 UTC
Permalink
Glad it's working.

Name resolution was my biggest issue when using a FW and DMZ type scenario.

Interesting point on the Network Ops group in 2003.
--
Darren Green
http://www.sqldts.com
Post by Roger Bavaud
OK is working now :-)
The Account witch is used for the Com+ Application must be a Member of the
local Group "Network Configuarton Operarators" only local Administrator is
not enaught - Windows 2003 Security ?!?
Regards
Roger
Post by Roger Bavaud
Hi,
Now I can ping both server by name... but MSDCT is not workring - Same
error
Post by Roger Bavaud
message. :-(
C:\>dtctester ChronoTrack Chronotrack xxxx
Executed: dtctester
DSN: ChronoTrack
User Name: Chronotrack
Password: xxxx
tablename= #dtc19103
Creating Temp Table for Testing: #dtc19103
Warning: No Columns in Result Set From Executing: 'create table #dtc19103
(ival
int)'
Initializing DTC
Beginning DTC Transaction
Enlisting Connection in Transaction
SQLSTATE=25S12,Native error=-2147168220,msg='[Microsoft][ODBC SQL Server
Driver]
Distributed transaction error'
SQLSTATE=24000,Native error=0,msg=[Microsoft][ODBC SQL Server
Driver]Invalid
Post by Roger Bavaud
cur
sor state
Typical Errors in DTC Output When
a. Firewall Has Ports Closed
-OR-
b. Bad WINS/DNS entries
-OR-
c. Misconfigured network
-OR-
d. Misconfigured SQL Server machine that has multiple netcards.
Aborting DTC Transaction
Releasing DTC Interface Pointers
Successfully Released pTransaction Pointer.
Post by Roger Bavaud
Yes the Web and the SQL Server are different machines.
The Service is running on both machines.
The Web Server is in a Test Lan and will be moved in a DMZ (behind the
firewall).
--> So I will try to create LMHosts files...
I use TCP/IP for the connection.
The SQL Database is running on a SQL 2000 Insatance (Port 5000).
Server Alias ETACHDB1VSO\Chronotrack
Network Library TCP/IP
Connection parameters 149.133.75.236\Chronotrack,5000
Post by Darren Green
I assume the web and SQL are on different machines?
Is the MS DTC service running on both machines?
Can you ping by name between the machines, both ways? DTC requires
name
Post by Roger Bavaud
Post by Roger Bavaud
Post by Darren Green
resolution to work. Check your Hosts and LMHosts files.
Use TCP/IP for your SQL client network libaray if you can.
Is there any DTS here?
--
Darren Green
http://www.sqldts.com
Post by Roger Bavaud
Hello NG
I use a Windows Server 2003 Web Edition standalone Server as Web
Server.
Post by Roger Bavaud
Post by Darren Green
On
Post by Roger Bavaud
this Server I have a web application running. This Web Application
use
Post by Roger Bavaud
Post by Roger Bavaud
Post by Darren Green
some
Post by Roger Bavaud
Com+ components.
The Com+ components uses the MSDTC.
When I try to connect to the DB - I recive the following error
message
Post by Roger Bavaud
Post by Roger Bavaud
Post by Darren Green
from
Post by Roger Bavaud
User CTAdmin
Session 07.10.2003 14:31:29
Error Type Application defined Error
Error Number -2147168246
Error Source Microsoft OLE DB Provider for ODBC Drivers
Module/Function Benutzer/UserRole
Fehler [-2147168246][Microsoft OLE DB Provider for ODBC
Drivers][MTSFUNCTION/ConnectionGet] [Microsoft][ODBC SQL Server
Driver]Distributed transaction error
I can disable MSDTC on the Com+ components (Transaction support).
Then
Post by Roger Bavaud
Post by Roger Bavaud
the
Post by Darren Green
Post by Roger Bavaud
application is working.
Also, when I run the Application on an Windows 2000 Memeber Server -
MSDTC
Post by Darren Green
Post by Roger Bavaud
is working.
Can anybody help me?
Regards
Roger
Emra User
2007-10-02 12:00:28 UTC
Permalink
Could you please explain what is the exact name of the com+ application you are referring to? and why to use lmhosts files?

Thanks


From http://www.developmentnow.com/g/103_2003_10_0_0_393895/Problem-with-MS-DTC-on-Windows-Server-2003.ht

Posted via DevelopmentNow.com Group
http://www.developmentnow.com

Continue reading on narkive:
Loading...