Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Distributed transaction completed. Either enlist this session in a new transacti

575 views
Skip to first unread message

Murat TALU

unread,
Nov 25, 2000, 3:00:00 AM11/25/00
to

Hello,

I have a COM+ business object (requires transaction) written in VB6. This method
executes a stored procedure on SQL Server 7 database using ADODB.Command object.
Stored procedure performs update or insert operations on tables causing triggers
to fire. In triggers we immediately rollback the transaction and issue a
RAISERROR statement following a RETURN statement. We catch these errors from our
COM+ components and report errors to calling clients.

My com+ component expects to catch error string that I raised with RAISERROR,
instead, I get the following error:

Description :Distributed transaction completed. Either enlist this session in a
new transaction or the NULL transaction.
Source : Microsoft OLE DB Provider for SQL Server
Number : -2147217900

I transferred the database using backup and restore utility (Enterprise Manager)
to another database running on another SQL Server, and tried the same thing
everything worked fine. So the problem should be related to a configuration
mismatch in SQL Server or OLEDB Provider.

I would greatly appreciate any any idea or help solving this problem.

Murat TALU
Software Engineer


sacha...@my-deja.com

unread,
Nov 30, 2000, 3:00:00 AM11/30/00
to
Is your stored procedure taking a long time to complete? That error
occurs when the transaction times out. The fact it worked on another
system could just mean that the transaction completed a bit quicker.

Either increase the transaction timeout length or rewrite your stored
procedure to run faster...

Sacha

In article <132301c056fe$07a09420$2e862ecf@cpmsftngxa02>,


"Murat TALU" <si...@superonline.com.tr> wrote:
>
> Hello,
>
> I have a COM+ business object (requires transaction) written in VB6.

=
> This method=20
> executes a stored procedure on SQL Server 7 database using =
> ADODB.Command object.=20


> Stored procedure performs update or insert operations on tables

causing =
> triggers=20


> to fire. In triggers we immediately rollback the transaction and

issue a =


>
> RAISERROR statement following a RETURN statement. We catch these

errors =
> from our=20
> COM+ components and report errors to calling clients.=20
>
> My com+ component expects to catch error string that I raised with =
> RAISERROR,=20


> instead, I get the following error:
>

> Description :Distributed transaction completed. Either enlist this =
> session in a=20


> new transaction or the NULL transaction.
> Source : Microsoft OLE DB Provider for SQL Server

> Number : -2147217900=20


>
> I transferred the database using backup and restore utility

(Enterprise =
> Manager)=20


> to another database running on another SQL Server, and tried the same

=
> thing=20
> everything worked fine. So the problem should be related to a =
> configuration=20
> mismatch in SQL Server or OLEDB Provider.=20


>
> I would greatly appreciate any any idea or help solving this problem.
>
> Murat TALU
> Software Engineer
>
>


Sent via Deja.com http://www.deja.com/
Before you buy.

0 new messages