umbraco / Umbraco-CMS

Umbraco is a free and open source .NET content management system helping you deliver delightful digital experiences.
https://umbraco.com
Other
4.49k stars 2.69k forks source link

ModelsBuilder issue in Deploy #4675

Closed zpqrtbnk closed 5 years ago

zpqrtbnk commented 5 years ago

A very weird issue has been reported in Deploy with ModelsBuilder (DataReader existing on Command...) - don't have a repro yet

zpqrtbnk commented 5 years ago
Failed to build PureLive models.
There is already an open DataReader associated with this Command which must be closed first.

at System.Data.SqlClient.SqlInternalConnectionTds.ValidateConnectionForExecute(SqlCommand command)
at System.Data.SqlClient.SqlConnection.ValidateConnectionForExecute(String method, SqlCommand command)
at System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 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.ExecuteScalar()
at StackExchange.Profiling.Data.ProfiledDbCommand.ExecuteScalar() in C:\projects\dotnet\src\MiniProfiler.Shared\Data\ProfiledDbCommand.cs:line 334
at Umbraco.Core.Persistence.FaultHandling.FaultHandlingDbCommand.<ExecuteScalar>b__32_0()
at Umbraco.Core.Persistence.FaultHandling.FaultHandlingDbCommand.<>c__DisplayClass33_0`1.<Execute>b__0()
at Umbraco.Core.Persistence.FaultHandling.RetryPolicy.ExecuteAction[TResult](Func`1 func)
at Umbraco.Core.Persistence.FaultHandling.FaultHandlingDbCommand.Execute[T](Func`1 f)
at Umbraco.Core.Persistence.FaultHandling.FaultHandlingDbCommand.ExecuteScalar()
at NPoco.Database.ExecuteScalarHelper(DbCommand cmd)
at NPoco.Database.ExecuteScalar[T](String sql, CommandType commandType, Object[] args)
at NPoco.Database.ExecuteScalar[T](Sql Sql)
at NPoco.Database.ExecuteScalar[T](String sql, Object[] args)
at Umbraco.Core.Scoping.Scope.ReadLock(Int32[] lockIds)
at Umbraco.Core.Services.Implement.ContentTypeServiceBase`3.GetAll(Int32[] ids)
at Umbraco.ModelsBuilder.Umbraco.UmbracoServices.GetAllTypes()
at Umbraco.ModelsBuilder.Umbraco.PureLiveModelFactory.GetModelsAssembly(Boolean forceRebuild)
at Umbraco.ModelsBuilder.Umbraco.PureLiveModelFactory.EnsureModels()
zpqrtbnk commented 5 years ago
Worker thread @30096
    RetryPolicy.ExecuteAction<object>() in Umbraco.Core.Persistence.FaultHandling, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Persistence\FaultHandling\RetryPolicy.cs:172:25
    FaultHandlingDbCommand.Execute<object>() in Umbraco.Core.Persistence.FaultHandling, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Persistence\FaultHandling\RetryDbConnection.cs:219:13
    FaultHandlingDbCommand.ExecuteScalar() in Umbraco.Core.Persistence.FaultHandling, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Persistence\FaultHandling\RetryDbConnection.cs:214:13
    Database.ExecuteScalarHelper() in NPoco, NPoco.dll
    Database.ExecuteScalar<int?>() in NPoco, NPoco.dll
    Database.ExecuteScalar<int?>() in NPoco, NPoco.dll
    Database.ExecuteScalar<int?>() in NPoco, NPoco.dll
    Scope.ReadLock() in Umbraco.Core.Scoping, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Scoping\Scope.cs:501:17
    ContentTypeServiceBase<IContentTypeRepository, IContentType, IContentTypeService>.GetAll() in Umbraco.Core.Services.Implement, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Services\Implement\ContentTypeServiceBaseOfTRepositoryTItemTService.cs:250:17
    UmbracoServices.GetAllTypes() in Umbraco.ModelsBuilder.Umbraco, Umbraco.ModelsBuilder.dll at D:\d\Zbu ModelsBuilder\src\Umbraco.ModelsBuilder\Umbraco\UmbracoServices.cs:39:13
    PureLiveModelFactory.GetModelsAssembly() in Umbraco.ModelsBuilder.Umbraco, Umbraco.ModelsBuilder.dll at D:\d\Zbu ModelsBuilder\src\Umbraco.ModelsBuilder\Umbraco\PureLiveModelFactory.cs:329:13
    PureLiveModelFactory.EnsureModels() in Umbraco.ModelsBuilder.Umbraco, Umbraco.ModelsBuilder.dll at D:\d\Zbu ModelsBuilder\src\Umbraco.ModelsBuilder\Umbraco\PureLiveModelFactory.cs:270:25
    PureLiveModelFactory.CreateModel() in Umbraco.ModelsBuilder.Umbraco, Umbraco.ModelsBuilder.dll at D:\d\Zbu ModelsBuilder\src\Umbraco.ModelsBuilder\Umbraco\PureLiveModelFactory.cs:81:13
    PublishedContentExtensionsForModels.CreateModel() in Umbraco.Core.Models.PublishedContent, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Models\PublishedContent\PublishedContentExtensionsForModels.cs:28:13
    ContentNode.SetContentTypeAndData() in Umbraco.Web.PublishedCache.NuCache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\PublishedCache\NuCache\ContentNode.cs:79:17
    ContentNodeKit.Build() in Umbraco.Web.PublishedCache.NuCache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\PublishedCache\NuCache\ContentNodeKit.cs:38:13
    ContentStore.BuildKit() in Umbraco.Web.PublishedCache.NuCache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\PublishedCache\NuCache\ContentStore.cs:429:13
    ContentStore.<>c__DisplayClass37_0.<UpdateContentTypes>b__1() in Umbraco.Web.PublishedCache.NuCache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\PublishedCache\NuCache\ContentStore.cs:344:21
    Enumerable.WhereEnumerableIterator<ContentNodeKit>.MoveNext() in System.Linq, System.Core.dll
    ContentStore.UpdateContentTypes() in Umbraco.Web.PublishedCache.NuCache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\PublishedCache\NuCache\ContentStore.cs:343:34
    PublishedSnapshotService.RefreshContentTypesLocked() in Umbraco.Web.PublishedCache.NuCache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\PublishedCache\NuCache\PublishedSnapshotService.cs:951:17
    PublishedSnapshotService.Notify<Umbraco.Core.Models.IContentType>() in Umbraco.Web.PublishedCache.NuCache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\PublishedCache\NuCache\PublishedSnapshotService.cs:804:17
    PublishedSnapshotService.Notify() in Umbraco.Web.PublishedCache.NuCache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\PublishedCache\NuCache\PublishedSnapshotService.cs:770:13
    ContentTypeCacheRefresher.Refresh() in Umbraco.Web.Cache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\Cache\ContentTypeCacheRefresher.cs:79:13
    ServerMessengerBase.DeliverLocal<Umbraco.Web.Cache.ContentTypeCacheRefresher.JsonPayload>() in Umbraco.Core.Sync, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Sync\ServerMessengerBase.cs:165:13
    ServerMessengerBase.Deliver<Umbraco.Web.Cache.ContentTypeCacheRefresher.JsonPayload>() in Umbraco.Core.Sync, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Sync\ServerMessengerBase.cs:295:13
    ServerMessengerBase.PerformRefresh<Umbraco.Web.Cache.ContentTypeCacheRefresher.JsonPayload>() in Umbraco.Core.Sync, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Sync\ServerMessengerBase.cs:64:13
    DistributedCache.RefreshByPayload<Umbraco.Web.Cache.ContentTypeCacheRefresher.JsonPayload>() in Umbraco.Web.Cache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\Cache\DistributedCache.cs:91:13
    DistributedCacheExtensions.RefreshContentTypeCache() in Umbraco.Web.Cache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\Cache\DistributedCacheExtensions.cs:215:13
    DistributedCacheBinder.ContentTypeService_Changed() in Umbraco.Web.Cache, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\Cache\DistributedCacheBinder_Handlers.cs:297:13
    EventDefinition<IContentTypeService, ContentTypeChange<IContentType>.EventArgs>.RaiseEvent() in Umbraco.Core.Events, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Events\EventDefinition.cs:69:17
    QueuingEventDispatcher.ScopeExitCompleted() in Umbraco.Core.Events, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Events\QueuingEventDispatcher.cs:25:17
    QueuingEventDispatcherBase.ScopeExit() in Umbraco.Core.Events, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Events\QueuingEventDispatcherBase.cs:337:17
    Scope.<>c__DisplayClass72_0.<RobustExit>b__1() in Umbraco.Core.Scoping, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Scoping\Scope.cs:435:21
    Scope.TryFinally() in Umbraco.Core.Scoping, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Scoping\Scope.cs:474:17
    Scope.TryFinally() in Umbraco.Core.Scoping, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Scoping\Scope.cs:478:17
    Scope.TryFinally() in Umbraco.Core.Scoping, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Scoping\Scope.cs:466:13
    Scope.RobustExit() in Umbraco.Core.Scoping, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Scoping\Scope.cs:422:13
    Scope.DisposeLastScope() in Umbraco.Core.Scoping, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Scoping\Scope.cs:402:13
    Scope.Dispose() in Umbraco.Core.Scoping, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Scoping\Scope.cs:365:17
    ContentTypeServiceBase<IContentTypeRepository, IContentType, IContentTypeService>.Save() in Umbraco.Core.Services.Implement, Umbraco.Core.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Core\Services\Implement\ContentTypeServiceBaseOfTRepositoryTItemTService.cs:414:13
    ContentTypeController.<PostSave>b__15_1() in Umbraco.Web.Editors, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\Editors\ContentTypeController.cs:290:45
    ContentTypeControllerBase<IContentType>.PerformPostSave<Umbraco.Web.Models.ContentEditing.DocumentTypeDisplay, Umbraco.Web.Models.ContentEditing.DocumentTypeSave, Umbraco.Web.Models.ContentEditing.PropertyTypeBasic>() in Umbraco.Web.Editors, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\Editors\ContentTypeControllerBase.cs:295:17
    ContentTypeController.PostSave() in Umbraco.Web.Editors, Umbraco.Web.dll at D:\Projects\Umbraco-CMS\src\Umbraco.Web\Editors\ContentTypeController.cs:287:13
    [Lightweight Method Call]
    ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass6_2.<GetExecutor>b__2() in System.Web.Http.Controllers, System.Web.Http.dll
    ReflectedHttpActionDescriptor.ActionExecutor.Execute() in System.Web.Http.Controllers, System.Web.Http.dll
    ReflectedHttpActionDescriptor.ExecuteAsync() in System.Web.Http.Controllers, System.Web.Http.dll
    ApiControllerActionInvoker.<InvokeActionAsyncCore>d__1.MoveNext() in System.Web.Http.Controllers, System.Web.Http.dll
    AsyncTaskMethodBuilder<HttpResponseMessage>.Start<System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__1>() in System.Runtime.CompilerServices, mscorlib.dll
    ApiControllerActionInvoker.InvokeActionAsyncCore() in System.Web.Http.Controllers, System.Web.Http.dll
    ApiControllerActionInvoker.InvokeActionAsync() in System.Web.Http.Controllers, System.Web.Http.dll
    ActionFilterResult.ActionInvoker.InvokeActionAsync() in System.Web.Http.Controllers, System.Web.Http.dll
    ActionFilterResult.<>c.<ExecuteAsync>b__5_0() in System.Web.Http.Controllers, System.Web.Http.dll
    ActionFilterResult.<>c__DisplayClass7_0<ActionFilterResult.ActionInvoker>.<InvokeActionWithActionFilters>b__0() in System.Web.Http.Controllers, System.Web.Http.dll
    ActionFilterAttribute.<CallOnActionExecutedAsync>d__6.MoveNext() in System.Web.Http.Filters, System.Web.Http.dll
zpqrtbnk commented 5 years ago

oh well, that was because... we never made sure that MB PureLive supported NuCache and ... ah

zpqrtbnk commented 5 years ago

have fixed