Copied to clipboard

Flag this post as spam?

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


  • ewuski 99 posts 286 karma points
    Mar 11, 2024 @ 18:12
    ewuski
    0

    U10 - Often Execution Timeout Expired when getting umbraco nodes in the backoffice

    Since we upgradedto 10.0.8 we often receive the database timeout error when trying to manage the content in the backoffice.

    The error does not happen on the public facing site, only when browsing the backoffice.

    It doens't happen all the time. but when it happens it keeps timing out for longer. The site restart doesn't help.

    Anyone encountered something similar or have an idea what could be causing this?

    This happens only on production & other remote sites (eg. staging). It doesn't happen locally.

    Example:

    Received an error from the server
    An error occurred
    Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
    
    Exception Details
    Microsoft.Data.SqlClient.SqlException, Microsoft.Data.SqlClient, Version=3.0.0.0, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5: Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
    Stacktrace
    at Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
       at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
       at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
       at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
       at Microsoft.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
       at Microsoft.Data.SqlClient.SqlDataReader.get_MetaData()
       at Microsoft.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
       at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean isAsync, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
       at Microsoft.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry, String method)
       at Microsoft.Data.SqlClient.SqlCommand.ExecuteScalar()
       at Umbraco.Cms.Infrastructure.Persistence.FaultHandling.RetryPolicy.ExecuteAction[TResult](Func`1 func)
       at NPoco.Database.ExecuteScalarHelper(DbCommand cmd)
       at NPoco.Database.ExecuteScalar[T](String sql, CommandType commandType, Object[] args)
       at Umbraco.Cms.Infrastructure.Persistence.UmbracoDatabase.ExecuteScalar[T](String sql, CommandType commandType, Object[] args)
       at Umbraco.Cms.Infrastructure.Persistence.UmbracoDatabase.ExecuteScalar[T](Sql sql)
       at Umbraco.Cms.Infrastructure.Persistence.UmbracoDatabase.ExecuteScalar[T](String sql, Object[] args)
       at Umbraco.Cms.Persistence.SqlServer.Services.SqlServerDistributedLockingMechanism.SqlServerDistributedLock.ObtainReadLock()
       at Umbraco.Cms.Persistence.SqlServer.Services.SqlServerDistributedLockingMechanism.SqlServerDistributedLock..ctor(SqlServerDistributedLockingMechanism parent, Int32 lockId, DistributedLockType lockType, TimeSpan timeout)
       at Umbraco.Cms.Persistence.SqlServer.Services.SqlServerDistributedLockingMechanism.ReadLock(Int32 lockId, Nullable`1 obtainLockTimeout)
       at Umbraco.Cms.Infrastructure.Scoping.Scope.ObtainReadLock(Int32 lockId, Nullable`1 timeout)
       at Umbraco.Cms.Infrastructure.Scoping.Scope.LockInner(Guid instanceId, Dictionary`2& locks, HashSet`1& locksSet, Action`2 obtainLock, Nullable`1 timeout, Int32 lockId)
       at Umbraco.Cms.Infrastructure.Scoping.Scope.EagerReadLockInner(Guid instanceId, Nullable`1 timeout, Int32[] lockIds)
       at Umbraco.Cms.Infrastructure.Scoping.Scope.EnsureDbLocks()
       at Umbraco.Cms.Infrastructure.Scoping.Scope.get_Database()
       at Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement.ContentTypeCommonRepository.GetAllTypesInternal()
       at Umbraco.Extensions.AppCacheExtensions.<>c__DisplayClass0_0`1.<GetCacheItem>b__0()
       at Umbraco.Cms.Core.Cache.SafeLazy.<>c__DisplayClass1_0.<GetSafeLazy>b__0()
    --- End of stack trace from previous location ---
       at Umbraco.Cms.Core.Cache.ObjectCacheAppCache.Get(String key, Func`1 factory, Nullable`1 timeout, Boolean isSliding, String[] dependentFiles)
       at Umbraco.Cms.Core.Cache.DeepCloneAppCache.Get(String key, Func`1 factory, Nullable`1 timeout, Boolean isSliding, String[] dependentFiles)
       at Umbraco.Extensions.AppCacheExtensions.GetCacheItem[T](IAppPolicyCache provider, String cacheKey, Func`1 getCacheItem, Nullable`1 timeout, Boolean isSliding, String[] dependentFiles)
       at Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement.ContentTypeCommonRepository.GetAllTypes()
       at Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement.ContentTypeRepository.GetAllWithFullCachePolicy()
       at Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement.ContentTypeRepositoryBase`1.PerformGetAll(Int32[] ids)
       at Umbraco.Cms.Core.Cache.FullDataSetRepositoryCachePolicy`2.GetAllCached(Func`2 performGetAll)
       at Umbraco.Cms.Core.Cache.FullDataSetRepositoryCachePolicy`2.GetAll(TId[] ids, Func`2 performGetAll)
       at Umbraco.Cms.Core.Services.ContentTypeServiceBase`2.GetAll(Int32[] ids)
       at Umbraco.Cms.Web.BackOffice.Controllers.ContentTypeController.AllowsCultureVariation()
       at lambda_method1316(Closure , Object , Object[] )
       at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
       at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()
       at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
       at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()
    --- End of stack trace from previous location ---
       at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
       at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
       at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
    --- End of stack trace from previous location ---
       at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|26_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
    

    And the details:

    Timestamp   2024-03-11T18:10:03.7663734+00:00
    @MessageTemplate    Exception ({InstanceId}).
    InstanceId  885ca491
    SourceContext   Umbraco.Cms.Infrastructure.Persistence.UmbracoDatabase 
    ActionId    21dc3ba7-0434-43ce-9729-1f13ab2476e1
    ActionName  Umbraco.Cms.Web.BackOffice.Trees.ContentTypeTreeController.GetNodes (Umbraco.Web.BackOffice)
    RequestId   40000a13-0002-f000-b63f-84710c7967bb
    RequestPath /umbraco/backoffice/umbracotrees/contenttypetree/GetNodes
    ProcessId   6840
    ProcessName w3wp
    ThreadId    213
    ApplicationId   e11d0c86b1a565a7bfeb26f86d7f0d905c37ec57
    MachineName ...
    Log4NetLevel    ERROR
    HttpRequestId   3d945fda-ff47-44b7-b405-37b8a9758422
    HttpRequestNumber   3 
    HttpSessionId   84602be7-706a-1e7e-9e41-9f10e94862d5
    
  • Alex Skrypnyk 6163 posts 24143 karma points MVP 8x admin c-trib
    1 week ago
    Alex Skrypnyk
    0

    Hi,

    We have the same issue, did you find a solution?

    Alex

  • jerin-ose 8 posts 28 karma points
    1 week ago
    jerin-ose
    0

    I would like to ask if the Umbraco site is hosted on Azure or on another on-premises server. If you're using Azure, you can consider increasing the Azure SQL timeout, and you may also adjust the connection timeout in the connection string.

Please Sign in or register to post replies

Write your reply to:

Draft