[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-1786) JTASessionContext.CleanupSynch does not remove sessions from currentSessionMap

Heinz Huber (JIRA) noreply at atlassian.com
Wed Nov 29 08:57:06 EST 2006


    [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1786?page=comments#action_25467 ] 

Heinz Huber commented on HHH-1786:
----------------------------------

Fix works like a charm. I made one adjustment: Direct use of Integer instead of String as key.

Since this is a known problem of WebSphere, I'd appriciate if hibernate would handle this until IBM fixes the problem.

> JTASessionContext.CleanupSynch does not remove sessions from currentSessionMap
> ------------------------------------------------------------------------------
>
>          Key: HHH-1786
>          URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1786
>      Project: Hibernate3
>         Type: Improvement

>     Versions: 3.1.2
>  Environment: IBM WebSphere 6.0.2.7, Hibernate CVS snapshot from 2006-02-24
>     Reporter: Tomi Szabo
>  Attachments: JTASessionContext.java
>
>
> We are using JTASessionContext, CMTTransaction and WebSphereExtendedJTATransactionLookup. We have experienced some memmory leak problems and after closer inspection we have found that Hibernate sessions are not removed from currentSessionMap inside JTASessionContext.
> Method JTASessionContext.CleanupSynch.afterCompletion() is called as expected but code "context.currentSessionMap.remove( txn );" does not remove session from Map because of key's hashcode has changed. This is due to fact that com.ibm.websphere.jtaextensions.ExtendedJTATransaction.hashCode is actually ID of underlaying transaction. But if it comes to the afterCompletion method in CleanupSynch the underlaying transaction is already closed. Closed transaction has ID 0 (default value) and it is different from ID under which the Hibernate session was previously inserted into Map.
> Possible patch is in attachements.

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




More information about the hibernate-issues mailing list