cleanup by batch of 1000

This commit is contained in:
Athou
2013-06-16 15:40:33 +02:00
parent edcd54640a
commit 56f4f33707
2 changed files with 17 additions and 7 deletions

View File

@@ -20,10 +20,18 @@ public class DatabaseCleaner {
Calendar cal = Calendar.getInstance();
cal.add(Calendar.MINUTE, -1 * (int) unit.toMinutes(value));
List<FeedEntry> entries = feedEntryDAO.findByInserted(cal.getTime());
for (FeedEntry entry : entries) {
feedEntryDAO.delete(entry.getStatuses());
}
feedEntryDAO.delete(entries);
int deleted = -1;
do {
List<FeedEntry> entries = feedEntryDAO.findByInserted(
cal.getTime(), 1000);
deleted = entries.size();
for (FeedEntry entry : entries) {
feedEntryDAO.delete(entry.getStatuses());
}
feedEntryDAO.delete(entries);
} while (deleted != 0);
}
}