[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-3799) PersistentSet does not honor hashcode/equals contract when loaded eagerly

Florimon van Putte (JIRA) noreply at atlassian.com
Fri Feb 19 08:02:47 EST 2010


    [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-3799?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=35640#action_35640 ] 

Florimon van Putte commented on HHH-3799:
-----------------------------------------

I am also confirming the bug and voting +1. 
We have an entity with both multiple parent and multiple child relations to itself, and when we just load the whole graph, many child instances are missing, because our hashCode() and equals() depend on a field which isn't loaded yet by hibernate when it constructs the persistent sets.
Because of this we have to make our hashCode() and equals() depend on the 'id' field only, which isn't an ideal situation either.


> PersistentSet does not honor hashcode/equals contract when loaded eagerly
> -------------------------------------------------------------------------
>
>                 Key: HHH-3799
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3799
>             Project: Hibernate Core
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 3.3.1
>            Reporter: Igor Vaynberg
>            Assignee: Gail Badner
>            Priority: Minor
>             Fix For:  3.5.x
>
>         Attachments: test.zip
>
>
> when persistent set is loaded eagerly in some situations it calls hashcode on its items before their field values are populated and then uses this incorrect hashcode to store them in the set. this makes set items inaccessible by any collection items that rely on hashcode such as contains(), remove(), etc.
> attached is a simple maven test project that reproduces the error, unzip and mvn test to run the test.

-- 
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