parrallel delete

This commit is contained in:
Athou
2013-07-10 10:36:53 +02:00
parent fafc66eb8e
commit d293926624

View File

@@ -75,15 +75,19 @@ public class DatabaseCleaner {
long total = 0;
int deleted = -1;
do {
List<FeedCount> fcs = feedDAO.findDuplicates(0, 1, 1);
List<FeedCount> fcs = feedDAO.findDuplicates(0, 10, 1);
deleted = fcs.size();
for (FeedCount fc : fcs) {
Feed into = feedDAO.findById(fc.feeds.get(0).getId());
List<Feed> feeds = Lists.newArrayList();
for (Feed feed : fc.feeds) {
feeds.add(feedDAO.findById(feed.getId()));
}
mergeFeeds(into, feeds);
for (final FeedCount fc : fcs) {
new Thread() {
public void run() {
Feed into = feedDAO.findById(fc.feeds.get(0).getId());
List<Feed> feeds = Lists.newArrayList();
for (Feed feed : fc.feeds) {
feeds.add(feedDAO.findById(feed.getId()));
}
mergeFeeds(into, feeds);
};
}.start();
}
total += deleted;
log.info("merged {} feeds", total);