Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Darren Ferguson 1022 posts 3259 karma points MVP c-trib
    Jan 30, 2018 @ 11:24
    Darren Ferguson
    0

    New request is not allowed to start because it should come with valid transaction descriptor

    Hello,

    A customer has been running perfomance tests against a site we have built for them.

    This is version 7.58 and also the latest 7.6 in an Azure app service and using SQL Azure.

    The errors are SQL errors that we haven't seen before - and googling reveals that they are relatively rare exceptions:

    System.Data.SqlClient.SqlException (0x80131904): New request is not allowed to start because it should come with valid transaction descriptor.

    System.Data.SqlClient.SqlException (0x80131904): The server failed to resume the transaction.

    I've pasted a couple of full stack traces below for completeness. I also have a graph that shows that the performance test ran well for some time and then these errors began to occur.

    Interestingly - none of our custom data access was affected and continued to work during the periods that these errors occurred.

    I am mainly writing in case this is something that someone else has experienced.

    I have a suspicion that it may be to do with Azure and transient retry policies - but that is really just a guess!

    As mentioned stack traces below - and any help you can offer is much appreciated.

    Thanks.

    33 2018-01-25 14:08:05.2040000 2018-01-25 14:13:31.3550000 ERROR umbraco.cms.businesslogic.member.Member - An error occurred in GetCurrentMember System.Data.SqlClient.SqlException (0x80131904): New request is not allowed to start because it should come with valid transaction descriptor. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.TdsExecuteTransactionManagerRequest(Byte[] buffer, TransactionManagerRequestType request, String transactionName, TransactionManagerIsolationLevel isoLevel, Int32 timeout, SqlInternalTransaction transaction, TdsParserStateObject stateObj, Boolean isDelegateControlRequest) at System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransactionYukon(TransactionRequest transactionRequest, String transactionName, IsolationLevel iso, SqlInternalTransaction internalTransaction, Boolean isDelegateControlRequest) at System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransaction(TransactionRequest transactionRequest, String name, IsolationLevel iso, SqlInternalTransaction internalTransaction, Boolean isDelegateControlRequest) at System.Data.SqlClient.SqlInternalConnection.BeginSqlTransaction(IsolationLevel iso, String transactionName, Boolean shouldReconnect) at System.Data.SqlClient.SqlConnection.BeginTransaction(IsolationLevel iso, String transactionName) at System.Data.SqlClient.SqlConnection.BeginDbTransaction(IsolationLevel isolationLevel) at System.Data.Common.DbConnection.BeginTransaction(IsolationLevel isolationLevel) at StackExchange.Profiling.Data.ProfiledDbConnection.BeginDbTransaction(IsolationLevel isolationLevel) in c:\Code\github\SamSaffron\MiniProfiler\StackExchange.Profiling\Data\ProfiledDbConnection.cs:line 206 at System.Data.Common.DbConnection.System.Data.IDbConnection.BeginTransaction(IsolationLevel isolationLevel) at Umbraco.Core.Persistence.Database.BeginTransaction(IsolationLevel isolationLevel) at Umbraco.Core.Scoping.Scope.getDatabase() at Umbraco.Core.Persistence.UnitOfWork.ScopeUnitOfWork.getDatabase() at Umbraco.Core.Persistence.Repositories.MemberRepository.ProcessQuery(Sql sqlFull, PagingSqlQuery pagingSqlQuery, Boolean withCache) at Umbraco.Core.Persistence.Repositories.MemberRepository.PerformGetByQuery(IQuery1 query) at Umbraco.Core.Persistence.Repositories.RepositoryBase2.GetByQuery(IQuery1 query) at Umbraco.Core.Services.MemberService.GetByUsername(String username) at Umbraco.Web.Security.Providers.UmbracoMembershipProvider2.GetUser(String username, Boolean userIsOnline) at Umbraco.Core.Security.MembershipProviderExtensions.GetCurrentUser(MembershipProvider membershipProvider) at umbraco.cms.businesslogic.member.Member.GetCurrentMember()

    1 2018-01-25 14:08:06.2980000 2018-01-25 14:08:06.2980000 ERROR Umbraco.Core.Persistence.UmbracoDatabase - Exception (b7514517). System.Data.SqlClient.SqlException (0x80131904): The server failed to resume the transaction. Desc:a900002bbc. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() at System.Data.SqlClient.SqlDataReader.getMetaData() at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior) at StackExchange.Profiling.Data.ProfiledDbCommand.ExecuteDbDataReader(CommandBehavior behavior) in c:\Code\github\SamSaffron\MiniProfiler\StackExchange.Profiling\Data\ProfiledDbCommand.cs:line 235 at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader() at Umbraco.Core.Persistence.PetaPocoCommandExtensions.<>c__DisplayClass5_0.b__0() at Umbraco.Core.Persistence.FaultHandling.RetryPolicy.ExecuteAction[TResult](Func1 func) at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command, RetryPolicy cmdRetryPolicy, RetryPolicy conRetryPolicy) at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command, RetryPolicy retryPolicy) at Umbraco.Core.Persistence.PetaPocoCommandExtensions.ExecuteReaderWithRetry(IDbCommand command) at Umbraco.Core.Persistence.Database.d_74`1.MoveNext()

  • Steve Milligan 11 posts 77 karma points
    Apr 27, 2018 @ 10:26
    Steve Milligan
    0

    I'm also experiencing the same issue, intermittently, using Umbraco 7.5.11 and SQL Server 2016. Seems to be happening on a document type that has several Nested Content elements.

    All seems to be ok on our dev environment that uses Sql Server 2012

    Any help would be appreciated.

  • Salomons 15 posts 107 karma points c-trib
    Dec 20, 2018 @ 10:50
    Salomons
    0

    Hi Guys,

    Same issue here Umbraco 7.12.4, can it be that is has something to do with the miniprofiler?

    The following line implies that the miniprofiler is used in the connection. Also this detailed info (line nr etc) tells me that the miniprofiler is a debug version???. Is this by design? Should the miniprofiler be used when not in debug mode?

    c:\Code\github\SamSaffron\MiniProfiler\StackExchange.Profiling\Data\ProfiledDbCommand.cs:line 235 at
    
  • Andy Felton 185 posts 484 karma points c-trib
    Apr 30, 2019 @ 10:51
    Andy Felton
    0

    Hi All,

    Did anybody get anywhere with resolving these. Today I'm seeing similar issues when connecting to SQL Server 2017 on my development machine.

    Many Thanks Andy

  • Dan 61 posts 185 karma points
    Aug 01, 2019 @ 08:39
    Dan
    0

    Hi all think I have the same problem now ?

    did any of you find a solution ?

  • Damien Holley 179 posts 540 karma points
    Oct 23, 2019 @ 23:54
    Damien Holley
    0

    Same here getting this with production but not dev environment. On Azure as webapp, SQL db. Umbraco v7.14

  • Simon Dingley 1470 posts 3427 karma points c-trib
    Feb 07, 2020 @ 12:21
    Simon Dingley
    1

    Just started seeing this on a v7 site today - didn't anyone get to the bottom of it?

  • Gurumurthy 52 posts 125 karma points
    Sep 03, 2020 @ 12:33
    Gurumurthy
    0

    HI Darren,

    Just an clarification, that the package Examine Dashboard, will it required for v8? as i have upgraded my site from v7 to v8, when in older they wear used with Examine Dashboard, do this wil work in v8?

    https://our.umbraco.com/packages/developer-tools/examine-dashboard/

    Thanks,

    Gurumurthy J V

Please Sign in or register to post replies

Write your reply to:

Draft