Check this patch I developed to fix two nagging problems I faced when clearing a hibernate session:
- reassociated object has dirty collection reference
- Found two representations of same collection: (collection type)
It is against Hibernate 3.1.3 and it solved the scenarios I faced. I hope it works for you too. Any comments are very welcome.