I've inspected changes in ClassProxyGenerator and my guess is that new
SlimReaderWriterLock.EnterWriteLock() is not equivalent to what
ReaderWriterLock.UpgradeToWriterLock(-1) used to do.

Thanks

On Jan 7, 2:01 pm, Yuriy Ostapenko <[email protected]> wrote:
> All Cassini worker threads end up looking this way:
>
> ~22e!clrstack
> OS Thread Id: 0x348 (22)
> ESP       EIP
> 096fcb54 7c90e4f4 [HelperMethodFrame_1OBJ: 096fcb54]
> System.Threading.WaitHandle.WaitOneNative
> (Microsoft.Win32.SafeHandles.SafeWaitHandle, UInt32, Boolean, Boolean)
> 096fcc00 792b687f System.Threading.WaitHandle.WaitOne(Int64, Boolean)
> 096fcc1c 792b6835 System.Threading.WaitHandle.WaitOne(Int32, Boolean)
> 096fcc30 6c3544fc System.Threading.ReaderWriterLockSlim.WaitOnEvent
> (System.Threading.EventWaitHandle, UInt32 ByRef, Int32)
> 096fcc68 6c353eaf
> System.Threading.ReaderWriterLockSlim.TryEnterUpgradeableReadLock
> (Int32)
> 096fcc84 6c353f48
> System.Threading.ReaderWriterLockSlim.EnterUpgradeableReadLock()
> 096fcc88 042ce104
> Castle.Core.Internal.SlimReaderWriterLock.EnterReadLock()
> 096fcc8c 06977f98
> Castle.DynamicProxy.Generators.ClassProxyGenerator.GenerateCode
> (System.Type[], Castle.DynamicProxy.ProxyGenerationOptions)
> 096fce7c 06977f19
> Castle.DynamicProxy.DefaultProxyBuilder.CreateClassProxy(System.Type,
> System.Type[], Castle.DynamicProxy.ProxyGenerationOptions)
> 096fce98 06977dab Castle.DynamicProxy.ProxyGenerator.CreateClassProxy
> (System.Type, System.Type[],
> Castle.DynamicProxy.ProxyGenerationOptions, System.Object[],
> Castle.Core.Interceptor.IInterceptor[])
> 096fcec0 06977d36 Castle.DynamicProxy.ProxyGenerator.CreateClassProxy
> (System.Type, System.Type[], Castle.Core.Interceptor.IInterceptor[])
> 096fcecc 06977a7d NHibernate.ByteCode.Castle.ProxyFactory.GetProxy
> (System.Object, NHibernate.Engine.ISessionImplementor)
> 096fcf1c 0697790b
> NHibernate.Tuple.Entity.AbstractEntityTuplizer.CreateProxy
> (System.Object, NHibernate.Engine.ISessionImplementor)
> 096fcf2c 069778d6
> NHibernate.Persister.Entity.AbstractEntityPersister.CreateProxy
> (System.Object, NHibernate.Engine.ISessionImplementor)
> 096fcf44 0697698b
> NHibernate.Event.Default.DefaultLoadEventListener.CreateProxyIfNecessary
> (NHibernate.Event.LoadEvent,
> NHibernate.Persister.Entity.IEntityPersister,
> NHibernate.Engine.EntityKey, NHibernate.Event.LoadType,
> NHibernate.Engine.IPersistenceContext)
> 096fcf68 06974a89
> NHibernate.Event.Default.DefaultLoadEventListener.ProxyOrLoad
> (NHibernate.Event.LoadEvent,
> NHibernate.Persister.Entity.IEntityPersister,
> NHibernate.Engine.EntityKey, NHibernate.Event.LoadType)
> 096fcf98 0697485b
> NHibernate.Event.Default.DefaultLoadEventListener.OnLoad
> (NHibernate.Event.LoadEvent, NHibernate.Event.LoadType)
> 096fcfd4 069746da NHibernate.Impl.SessionImpl.FireLoad
> (NHibernate.Event.LoadEvent, NHibernate.Event.LoadType)
> 096fcfec 06974185 NHibernate.Impl.SessionImpl.InternalLoad
> (System.String, System.Object, Boolean, Boolean)
> 096fd010 0697405b NHibernate.Type.EntityType.ResolveIdentifier
> (System.Object, NHibernate.Engine.ISessionImplementor)
> 096fd038 06973f65 NHibernate.Type.EntityType.ResolveIdentifier
> (System.Object, NHibernate.Engine.ISessionImplementor, System.Object)
> 096fd054 0697646b NHibernate.Engine.TwoPhaseLoad.InitializeEntity
> (System.Object, Boolean, NHibernate.Engine.ISessionImplementor,
> NHibernate.Event.PreLoadEvent, NHibernate.Event.PostLoadEvent)
> 096fd0d0 06976272
> NHibernate.Loader.Loader.InitializeEntitiesAndCollections
> (System.Collections.IList, System.Object,
> NHibernate.Engine.ISessionImplementor, Boolean)
> 096fd104 064ccfe1 NHibernate.Loader.Loader.DoQuery
> (NHibernate.Engine.ISessionImplementor,
> NHibernate.Engine.QueryParameters, Boolean)
> 096fd174 064ccc17
> NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollections
> (NHibernate.Engine.ISessionImplementor,
> NHibernate.Engine.QueryParameters, Boolean)
> 096fd1ac 06dc8c17 NHibernate.Loader.Loader.LoadEntity
> (NHibernate.Engine.ISessionImplementor, System.Object,
> NHibernate.Type.IType, System.Object, System.String, System.Object,
> NHibernate.Persister.Entity.IEntityPersister)
> 096fd1f8 06dc8a5a NHibernate.Loader.Entity.AbstractEntityLoader.Load
> (NHibernate.Engine.ISessionImplementor, System.Object, System.Object,
> System.Object)
> 096fd218 06dc8a23 NHibernate.Loader.Entity.AbstractEntityLoader.Load
> (System.Object, System.Object, NHibernate.Engine.ISessionImplementor)
> 096fd228 06dc88d0
> NHibernate.Persister.Entity.AbstractEntityPersister.Load
> (System.Object, System.Object, NHibernate.LockMode,
> NHibernate.Engine.ISessionImplementor)
> 096fd24c 06dc87de
> NHibernate.Event.Default.DefaultLoadEventListener.LoadFromDatasource
> (NHibernate.Event.LoadEvent,
> NHibernate.Persister.Entity.IEntityPersister,
> NHibernate.Engine.EntityKey, NHibernate.Event.LoadType)
> 096fd27c 06974e9d
> NHibernate.Event.Default.DefaultLoadEventListener.DoLoad
> (NHibernate.Event.LoadEvent,
> NHibernate.Persister.Entity.IEntityPersister,
> NHibernate.Engine.EntityKey, NHibernate.Event.LoadType)
> 096fd2b4 06974b77
> NHibernate.Event.Default.DefaultLoadEventListener.Load
> (NHibernate.Event.LoadEvent,
> NHibernate.Persister.Entity.IEntityPersister,
> NHibernate.Engine.EntityKey, NHibernate.Event.LoadType)
> 096fd2dc 06974a9b
> NHibernate.Event.Default.DefaultLoadEventListener.ProxyOrLoad
> (NHibernate.Event.LoadEvent,
> NHibernate.Persister.Entity.IEntityPersister,
> NHibernate.Engine.EntityKey, NHibernate.Event.LoadType)
> 096fd30c 0697485b
> NHibernate.Event.Default.DefaultLoadEventListener.OnLoad
> (NHibernate.Event.LoadEvent, NHibernate.Event.LoadType)
> 096fd348 069746da NHibernate.Impl.SessionImpl.FireLoad
> (NHibernate.Event.LoadEvent, NHibernate.Event.LoadType)
> 096fd360 06dc8500 NHibernate.Impl.SessionImpl.Get(System.String,
> System.Object)
> 096fd398 06dc848d NHibernate.Impl.SessionImpl.Get(System.Type,
> System.Object)
> 096fd3a8 06dc7d9f Castle.ActiveRecord.ActiveRecordBase.FindByPrimaryKey
> (System.Type, System.Object, Boolean)
> 096fd3f8 06dc7cfe Castle.ActiveRecord.ActiveRecordMediator`1
> [[System.__Canon, mscorlib]].FindByPrimaryKey(System.Object, Boolean)
> ...my code here...
> 096fd76c 06980981 DynamicClass.lambda_method
> (System.Runtime.CompilerServices.ExecutionScope,
> System.Web.Mvc.ControllerBase, System.Object[])
> 096fd778 036cad22 System.Web.Mvc.ActionMethodDispatcher.Execute
> (System.Web.Mvc.ControllerBase, System.Object[])
> 096fd784 036ca8c0
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod
> (System.Reflection.MethodInfo,
> System.Collections.Generic.IDictionary`2<System.String,System.Object>)
> 096fd7a4 036ca7d8 System.Web.Mvc.ControllerActionInvoker
> +<>c__DisplayClassc.<InvokeActionMethodWithFilters>b__9()
> 096fd7b8 036ca6c0
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter
> (System.Web.Mvc.IActionFilter, System.Web.Mvc.ActionExecutingContext,
> System.Func`1<System.Web.Mvc.ActionExecutedContext>)
> 096fd7f4 036ca62d System.Web.Mvc.ControllerActionInvoker
> +<>c__DisplayClassc
> +<>c__DisplayClasse.<InvokeActionMethodWithFilters>b__b()
> 096fd7fc 036ca6c0
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter
> (System.Web.Mvc.IActionFilter, System.Web.Mvc.ActionExecutingContext,
> System.Func`1<System.Web.Mvc.ActionExecutedContext>)
> 096fd838 036ca62d System.Web.Mvc.ControllerActionInvoker
> +<>c__DisplayClassc
> +<>c__DisplayClasse.<InvokeActionMethodWithFilters>b__b()
> 096fd840 036ca6c0
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter
> (System.Web.Mvc.IActionFilter, System.Web.Mvc.ActionExecutingContext,
> System.Func`1<System.Web.Mvc.ActionExecutedContext>)
> 096fd87c 036ca62d System.Web.Mvc.ControllerActionInvoker
> +<>c__DisplayClassc
> +<>c__DisplayClasse.<InvokeActionMethodWithFilters>b__b()
> 096fd884 036ca6c0
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter
> (System.Web.Mvc.IActionFilter, System.Web.Mvc.ActionExecutingContext,
> System.Func`1<System.Web.Mvc.ActionExecutedContext>)
> 096fd8c0 036ca62d System.Web.Mvc.ControllerActionInvoker
> +<>c__DisplayClassc
> +<>c__DisplayClasse.<InvokeActionMethodWithFilters>b__b()
> 096fd8c8 036ca4b2
> System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters
> (System.Reflection.MethodInfo,
> System.Collections.Generic.IDictionary`2<System.String,System.Object>,
> System.Collections.Generic.IList`1<System.Web.Mvc.IActionFilter>)
> 096fd8e8 036c9401 System.Web.Mvc.ControllerActionInvoker.InvokeAction
> (System.Web.Mvc.ControllerContext, System.String)
> 096fd92c 036c8e91 System.Web.Mvc.Controller.ExecuteCore()
> 096fd958 036c8be8 System.Web.Mvc.ControllerBase.Execute
> (System.Web.Routing.RequestContext)
> 096fd964 036c8bb8
> System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute
> (System.Web.Routing.RequestContext)
> 096fd96c 036c7fac System.Web.Mvc.MvcHandler.ProcessRequest
> (System.Web.HttpContextBase)
> 096fd9ac 036c7f28 System.Web.Mvc.MvcHandler.ProcessRequest
> (System.Web.HttpContext)
> 096fd9c0 036c7ee8
> System.Web.Mvc.MvcHandler.System.Web.IHttpHandler.ProcessRequest
> (System.Web.HttpContext)
> 096fd9c8 660ad8f6 System.Web.HttpApplication
> +CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute
> ()
> 096fd9fc 6608132c System.Web.HttpApplication.ExecuteStep
> (IExecutionStep, Boolean ByRef)
> 096fda3c 6608c3a3 System.Web.HttpApplication
> +ApplicationStepManager.ResumeSteps(System.Exception)
> 096fda8c 660808ac
> System.Web.HttpApplication.System.Web.IHttpAsyncHandler.BeginProcessRequest
> (System.Web.HttpContext, System.AsyncCallback, System.Object)
> 096fdaa8 66083e1c System.Web.HttpRuntime.ProcessRequestInternal
> (System.Web.HttpWorkerRequest)
> 096fdadc 66083ac3 System.Web.HttpRuntime.ProcessRequestNoDemand
> (System.Web.HttpWorkerRequest)
> 096fdaec 66654d17 System.Web.HttpRuntime.ProcessRequest
> (System.Web.HttpWorkerRequest)
> 096fdb00 036c37a9 Microsoft.VisualStudio.WebHost.Request.Process()
> 096fdb18 036c344e Microsoft.VisualStudio.WebHost.Host.ProcessRequest
> (Microsoft.VisualStudio.WebHost.Connection)
> 096fdd64 79e71b4c [GCFrame: 096fdd64]
> 096fdd80 79e71b4c [GCFrame: 096fdd80]
> 096fdef4 79e71b4c [ContextTransitionFrame: 096fdef4]
> 096fdfe8 79e71b4c [GCFrame: 096fdfe8]
> 096fdfcc 79e71b4c [GCFrame: 096fdfcc]
> 096ff24c 79e71b4c [CustomGCFrame: 096ff24c]
> 096ff260 79e71b4c [CustomGCFrame: 096ff260]
> 096ff274 79e71b4c ...
>
> read more »
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Castle Project Development List" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/castle-project-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to