Orchard中间歇性的NHibernate会话问题

时间:2014-06-26 19:55:14

标签: nhibernate orchardcms

在过去一个月中,我们的Orchard网站(运行v1.8)已经多次开始返回200个代码,其中包含网站上不在输出缓存中的所有页面的空响应。每次只重新启动站点的应用程序池已解决该问题。当它发生时,我们在Orchard错误日志中看到以下对该站点的每个请求的条目:

2014-06-26 08:44:33,968 [8] Orchard.Exceptions.DefaultExceptionPolicy - Default - An unexpected exception was caught
 http://domain.com/team
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ObjectDisposedException: Session is closed!
Object name: 'ISession'.
   at NHibernate.Impl.AbstractSessionImpl.ErrorIfClosed() in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\AbstractSessionImpl.cs:line 213
   at NHibernate.Impl.AbstractSessionImpl.CheckAndUpdateSessionStatus() in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\AbstractSessionImpl.cs:line 206
   at NHibernate.Impl.SessionImpl.get_PersistenceContext() in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\SessionImpl.cs:line 1158
   at NHibernate.Event.Default.ProxyVisitor.ReattachCollection(IPersistentCollection collection, CollectionType type) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\ProxyVisitor.cs:line 64
   at NHibernate.Event.Default.WrapVisitor.ProcessCollection(Object collection, CollectionType collectionType) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\WrapVisitor.cs:line 47
   at NHibernate.Event.Default.WrapVisitor.ProcessValue(Int32 i, Object[] values, IType[] types) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\WrapVisitor.cs:line 98
   at NHibernate.Event.Default.AbstractVisitor.ProcessEntityPropertyValues(Object[] values, IType[] types) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\AbstractVisitor.cs:line 116
   at NHibernate.Event.Default.DefaultFlushEntityEventListener.OnFlushEntity(FlushEntityEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\DefaultFlushEntityEventListener.cs:line 43
   at NHibernate.Event.Default.AbstractFlushingEventListener.FlushEntities(FlushEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\AbstractFlushingEventListener.cs:line 161
   at NHibernate.Event.Default.AbstractFlushingEventListener.FlushEverythingToExecutions(FlushEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\AbstractFlushingEventListener.cs:line 61
   at NHibernate.Event.Default.DefaultAutoFlushEventListener.OnAutoFlush(AutoFlushEvent event) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Event\Default\DefaultAutoFlushEventListener.cs:line 32
   at NHibernate.Impl.SessionImpl.AutoFlushIfRequired(ISet`1 querySpaces) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\SessionImpl.cs:line 1180
   at NHibernate.Impl.SessionImpl.List(CriteriaImpl criteria, IList results) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\SessionImpl.cs:line 1959
   at NHibernate.Impl.CriteriaImpl.List(IList results) in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\CriteriaImpl.cs:line 265
   at NHibernate.Impl.CriteriaImpl.List[T]() in c:\Users\sebros\Documents\My Projects\nhibernate-core\src\NHibernate\Impl\CriteriaImpl.cs:line 277
   at Orchard.ContentManagement.DefaultContentManager.GetManyImplementation(QueryHints hints, Action`2 predicate) in c:\Users\Josh\Documents\Orchard\orchard\src\Orchard\ContentManagement\DefaultContentManager.cs:line 359
   at Orchard.ContentManagement.DefaultContentManager.GetMany[T](IEnumerable`1 ids, VersionOptions options, QueryHints hints) in c:\Users\Josh\Documents\Orchard\orchard\src\Orchard\ContentManagement\DefaultContentManager.cs:line 276
   at Orchard.MediaLibrary.Handlers.MediaLibraryPickerFieldHandler.<>c__DisplayClass3.<InitilizeLoader>b__1()
   at System.Lazy`1.CreateValue()
--- End of stack trace from previous location where exception was thrown ---

有没有其他人使用Orchard之前看过这个问题?我想知道这是否是Orchard中的错误或我们网站的具体错误。

我也在Orchard codeplex网站上记录了一个问题:https://orchard.codeplex.com/workitem/20775

任何见解都将非常感谢....

0 个答案:

没有答案