none
Looks like an ADO.NET connection dispose bug is back - Transaction or connection pool failure under load RRS feed

  • Question

  • HI all, I am receiving this error when testing under load:

    Application ID: /LM/W3SVC/1/ROOT/xxxxxServices



    Process ID: 4832



    Exception: System.ArgumentNullException



    Message: Value cannot be null.



    StackTrace:    at System.Threading.Monitor.Enter(Object obj)

       at
    System.Data.ProviderBase.DbConnectionPool.TransactedConnectionPool.TransactionEnded(Transaction
    transaction, DbConnectionInternal transactedObject)

       at System.Data.ProviderBase.DbConnectionPool.TransactionEnded(Transaction transaction, DbConnectionInternal transactedObject)

       at System.Data.ProviderBase.DbConnectionInternal.CleanupConnectionOnTransactionCompletion(Transaction transaction)

       at System.Data.ProviderBase.DbConnectionInternal.TransactionCompletedEvent(Object sender, TransactionEventArgs e)

       at System.Transactions.TransactionCompletedEventHandler.Invoke(Object sender, TransactionEventArgs e)

       at System.Transactions.InternalTransaction.FireCompletion()

       at System.Transactions.TransactionStatePromotedCommitted.EnterState(InternalTransaction tx)

       at System.Transactions.TransactionStatePromotedBase.ChangeStatePromotedCommitted(InternalTransaction tx)

       at System.Transactions.InternalTransaction.DistributedTransactionOutcome(InternalTransaction tx, TransactionStatus status)

       at System.Transactions.Oletx.RealOletxTransaction.FireOutcome(TransactionStatus statusArg)

       at System.Transactions.Oletx.OutcomeEnlistment.InvokeOutcomeFunction(TransactionStatus status)

       at System.Transactions.Oletx.OletxTransactionManager.ShimNotificationCallback(Object state, Boolean timeout)

       at System.Threading._ThreadPoolWaitOrTimerCallback.PerformWaitOrTimerCallback(Object state, Boolean timedOut)

    It appears that there was/is a System.Data bug that causes this. 

    http://support.microsoft.com/kb/960754

    Unfortunately, the hot fix that fixes this has been deprecated.  The machine in question has 2.0.50727.4016 version of System.Data.dll, while my dev machine (same OS) has 4044.  It appears that a recent security update pushed the 4016 version out?  This doesn't happen on 2008 R2  because it has a different version of System.Data.  Any idea how to update this? 

    Friday, February 17, 2012 5:56 PM

Answers

  • Hi Erik Blair,

    If you want to fix the bug by hotfix, please Contact Microsoft. There are three ways to talk with Mircrosoft to help you solve the issue, Email, Call or Chat. Another workaround is update the machine to latest version.

    Best Regards


    Allen Li [MSFT]
    MSDN Community Support | Feedback to us

    Thursday, February 23, 2012 3:26 AM
    Moderator

All replies

  • Hi Erik,

    Welcome to MSDN Forum.

    I'm not clear about the issue. Do you mean your dev machine's System.Data.dll is version4044, but the version on your another machine is 4016, the application couldn't run on that machine and you want to update the version? If I understand correct, you can update your visual studio to latest version. If I misunderstand, please feel free to correct me.

    Best Regards


    Allen Li [MSFT]
    MSDN Community Support | Feedback to us

    Monday, February 20, 2012 6:50 AM
    Moderator
  • Here's what I mean with the different versions. 

    The QA machine where this error under load is occuring is a windows server 2008 machine and it's version of System.Data is 4016.  I look at my own developer machine and it's 4044 - does not have the problem under same load.  A third machine that is server 2008R2 does not exhibit the problem under load as well and has a third version of the System.Data dll that's a later version than 4044 (don't have that number in front of me).  The KB states this is a bug and that a hotfix of the dll will address it.  However that hot fix is no longer available.  How can I update the machine that is exhibiting the symptoms of this bug? 

    Tuesday, February 21, 2012 7:40 PM
  • Hi Erik Blair,

    If you want to fix the bug by hotfix, please Contact Microsoft. There are three ways to talk with Mircrosoft to help you solve the issue, Email, Call or Chat. Another workaround is update the machine to latest version.

    Best Regards


    Allen Li [MSFT]
    MSDN Community Support | Feedback to us

    Thursday, February 23, 2012 3:26 AM
    Moderator
  • Yes, a workaround would be to update the the machine.  However, this machine has been fully updated and has the defective version.  I'll try and contact microsoft, something that hasn't been very effective so far.  Thanks.
    Thursday, February 23, 2012 3:25 PM
  • Hi Erik Blair,

    I hope the issue can be solved soon.

    Best Regards


    Allen Li [MSFT]
    MSDN Community Support | Feedback to us

    Friday, February 24, 2012 12:49 AM
    Moderator