2010-09-30 19 views
2

Je vois des exceptions de mémoire saturée en raison d'objets Hibernate qui consomment plus de 50% du tas. (plus de 500M) J'utilise EntityManager pour la persistanceLes objets d'hibernate mangeant le tas jvm de jboss

PersitanceBag et Collection Entry sont certains d'entre eux et il y a quelques HashMaps ainsi contribué par Hibernate.

S'il vous plaît aviser s'il ya une procédure pour se débarrasser d'eux après toute la persistance.

Merci à l'avance, acclamations,

raj

EDIT:

sera en utilisant em.clear() aide ou des effets secondaires?

EDIT 2:

em.clear() a aidé et force ont des « effets secondaires » ... il y avait un énorme morceau de mémoire retourné au tas après cet appel

+0

votre demande est fondée sur une f ramewrok, Struts, Spring, ou autres, qui pourraient conserver des références aux objets Hibernate? –

+0

Salut Tomas, nous utilisons Spring pour charger le fichier persistence.xml pour hiberner, je doute qu'il y ait d'autres threads gardant des références à ces objets - Raj – Rajan

Répondre

0

le code est en cours d'exécution dans un environnement de production pour un certain temps et em.clear aide sans effets secondaires ...

grâce,

Rajan