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/
>
>
No comments:
Post a Comment