Reply to Re: Why transaction gets promoted to Distributed transaction

Your name:

Reply:


Posted by joeNOSPAM@BEA.com on 02/01/07 15:41

On Feb 1, 7:30 am, "rbg" <rbg....@gmail.com> wrote:
> Hi,
> On My local SQL server I have added a linked server to another SQL
> server (remoteserver) in another Windows NT Domain.
>
> When I run this code
> select count(*) from remoteserver.mosaics.dbo.Location
>
> This works fine.
>
> However when I use
> begin transaction
> select count(*) from remoteserver.mosaics.dbo.Location
>
> It errors out saying that
> The operation could not be performed because the OLE DB provider
> 'SQLOLEDB' was unable to begin a distributed transaction.
> New transaction cannot enlist in the specified transaction
> coordinator. ]
> OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
> ITransactionJoin::JoinTransaction returned 0x8004d00a].
>
> My question is even though I am just reading data from the
> remoteserver, why does the local transaction get promoted to a
> distributed transaction.
> Any help will be grately appreciated.
>
> TIA...Rohit

It is because you have a transaction established when you do the
query. The
other DBMS has to establish it's part of the transaction. This step
comes
before the DBMS does anything with the SQL, even before parsing it. I
bet the same would happen if you tried a remote 'select 1'.

Joe Weinstein at BEA Systems

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация