1. A collection of 7000 entries means that you are doing it all wrong. If the collection is larger than 10-20 entries,
you are better off mapping the @ManyToOne side and use JPQL query to fetch the child entities using pagination.
2. Hibernate 3 is no longer supported, so, even if there is an issue, it will not be fixed. Try to upgrade and see if it replicates.
3. The exception you get is not related to the collection size. I assume you overwrite it instead of adding/updating/removing entries from the managed collection.