[ 
http://jira.xwiki.org/jira/browse/XWIKI-1828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sergiu Dumitriu updated XWIKI-1828:
-----------------------------------

    Affects Version/s: 1.2 M1
             Assignee: Sergiu Dumitriu
             Priority: Critical  (was: Major)

This blocks XWatch development, so it will be committed both in 1.1 and trunk 
(1.2)

> Hibernate session invalid in background threads
> -----------------------------------------------
>
>                 Key: XWIKI-1828
>                 URL: http://jira.xwiki.org/jira/browse/XWIKI-1828
>             Project: XWiki Platform
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.1.1, 1.2 M1
>            Reporter: Sergiu Dumitriu
>         Assigned To: Sergiu Dumitriu
>            Priority: Critical
>
> Anca noticed while working on XWatch that sometimes a "session is closed" 
> exception is thrown when updating the feeds.
> {noformat}
> org.hibernate.SessionException: Session is closed!
>   at 
> org.hibernate.impl.AbstractSessionImpl.errorIfClosed(AbstractSessionImpl.java:50)
>   at org.hibernate.impl.SessionImpl.setFlushMode(SessionImpl.java:1271)
>   at 
> com.xpn.xwiki.store.XWikiHibernateBaseStore.getSession(XWikiHibernateBaseStore.java:155)
>   at 
> com.xpn.xwiki.store.XWikiHibernateBaseStore.beginTransaction(XWikiHibernateBaseStore.java:595)
>   at 
> com.xpn.xwiki.store.XWikiHibernateBaseStore.beginTransaction(XWikiHibernateBaseStore.java:568)
>   at 
> com.xpn.xwiki.store.XWikiHibernateStore.searchDocumentsNamesInternal(XWikiHibernateStore.java:1825)
>   at 
> com.xpn.xwiki.store.XWikiHibernateStore.searchDocumentsNames(XWikiHibernateStore.java:1811)
>   at 
> com.xpn.xwiki.store.XWikiHibernateStore.searchDocumentsNames(XWikiHibernateStore.java:2231)
>   at 
> com.xpn.xwiki.store.XWikiCacheStore.searchDocumentsNames(XWikiCacheStore.java:200)
>   at 
> com.xpn.xwiki.plugin.feed.FeedPlugin.updateFeedsInSpace(FeedPlugin.java:310)
>   at com.xpn.xwiki.plugin.feed.UpdateThread.update(UpdateThread.java:82)
>   at com.xpn.xwiki.plugin.feed.UpdateThread.run(UpdateThread.java:56)
>   at java.lang.Thread.run(Thread.java:619)
> {noformat}
> From the above stacktrace, I think that the problem is caused by the fact 
> that at some point the context object is cloned along with its data members, 
> including the session object; this object is closed in another thread, and 
> the reference is deleted from that context object, but it still exists in the 
> context stored in the current thread.
> The proper fix would be to rethink the way the context is stored in 
> background threads, but an easy workaround is to catch this particular 
> exception.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.xwiki.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications

Reply via email to