From c6a9fdc8c3b2a4d4575eea38380b71222c566b47 Mon Sep 17 00:00:00 2001 From: Athou Date: Wed, 12 Jun 2013 05:08:27 +0200 Subject: [PATCH] flush the session for large inserts --- src/main/java/com/commafeed/backend/dao/GenericDAO.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/com/commafeed/backend/dao/GenericDAO.java b/src/main/java/com/commafeed/backend/dao/GenericDAO.java index d545b2c3..f747e975 100644 --- a/src/main/java/com/commafeed/backend/dao/GenericDAO.java +++ b/src/main/java/com/commafeed/backend/dao/GenericDAO.java @@ -36,8 +36,13 @@ public abstract class GenericDAO { public void saveOrUpdate(Collection models) { Session session = em.unwrap(Session.class); + int i = 1; for (AbstractModel model : models) { session.saveOrUpdate(model); + if (i % 50 == 0) { + session.flush(); + session.clear(); + } } }