Search found 2 matches

by s2
Fri 11 Mar 2011 02:49
Forum: dotConnect for Oracle
Topic: NullReferenceException with Distributed Transaction.
Replies: 10
Views: 2516

Hi mas,

We've not had any luck fixing this issue.

We've distilled the problem down to a single oracle query and a single mssql query inside a single transaction scope and it throws an exception in the worker process(and sent it to devart).

In the hope that we can narrow the issue down more, would it be possible to get a copy of the sample project that you have created to reproduce the bug in please?

Since I can't PM you, I can be reached at the following address.

[email protected]

Regards,
S2
by s2
Tue 15 Feb 2011 10:42
Forum: dotConnect for Oracle
Topic: NullReferenceException with Distributed Transaction.
Replies: 10
Views: 2516

Has an actual fix for the problem causing this exception been put into the latest version?

As I have been seeing a very similar exception since moving to 6, with commits rather than rollbacks. I tried 6.00.70, 6.10.96, 6.10.103 and they all exhibit the same failure with the same callstack as shown in the original post. When I remove our transaction code it work fine. When I change back to 5.7 driver I no longer get the exception when I use transactionScopes.

I am also unable to use the RequiresNew TransactionScopeOption as I have a number of operations I need combined into the one transactionScope. We are using MSDTC to manage transactions across multiple databases so we can't set to use local.


Thanks for your help.

-- Exception info --

The error in the exception is - "Object reference not set to an instance of an object."
There seems to be a list with a count of 0 in the exceptions
{System.Collections.ListDictionaryInternal}

-- Here is the stack trace --

Code: Select all

at Devart.Common.x.d()\r\n  
at Devart.Common.x.c(Enlistment A_0)\r\n   at System.Transactions.InternalEnlistment.System.Transactions.IEnlistmentNotificationInternal.Commit(IPromotedEnlistment enlistment)\r\n   at System.Transactions.Oletx.OletxVolatileEnlistment.Commit()\r\n   at System.Transactions.Oletx.OletxPhase1VolatileEnlistmentContainer.Committed()\r\n   at 
System.Transactions.Oletx.OletxTransactionManager.ShimNotificationCallback(Object state, Boolean timeout)\r\n   at System.Threading._ThreadPoolWaitOrTimerCallback.PerformWaitOrTimerCallback(Object state, Boolean timedOut)