limit query execution time to 20s

This commit is contained in:
Athou
2013-06-12 04:58:19 +02:00
parent 7bb660986e
commit 33f10f5e9c

View File

@@ -95,6 +95,7 @@ public class FeedEntryStatusDAO extends GenericDAO<FeedEntryStatus> {
TypedQuery<FeedEntryStatus> q = em.createQuery(query);
limit(q, offset, limit);
setTimeout(q);
return lazyLoadContent(true, q.getResultList());
}
@@ -131,6 +132,7 @@ public class FeedEntryStatusDAO extends GenericDAO<FeedEntryStatus> {
TypedQuery<FeedEntryStatus> q = em.createQuery(query);
limit(q, offset, limit);
setTimeout(q);
return lazyLoadContent(includeContent, q.getResultList());
}
@@ -168,6 +170,7 @@ public class FeedEntryStatusDAO extends GenericDAO<FeedEntryStatus> {
TypedQuery<FeedEntryStatus> q = em.createQuery(query);
limit(q, offset, limit);
setTimeout(q);
return lazyLoadContent(includeContent, q.getResultList());
}
@@ -210,6 +213,7 @@ public class FeedEntryStatusDAO extends GenericDAO<FeedEntryStatus> {
TypedQuery<FeedEntryStatus> q = em.createQuery(query);
limit(q, offset, limit);
setTimeout(q);
return lazyLoadContent(includeContent, q.getResultList());
}
@@ -253,6 +257,7 @@ public class FeedEntryStatusDAO extends GenericDAO<FeedEntryStatus> {
TypedQuery<FeedEntryStatus> q = em.createQuery(query);
limit(q, offset, limit);
setTimeout(q);
return lazyLoadContent(includeContent, q.getResultList());
}
@@ -293,6 +298,10 @@ public class FeedEntryStatusDAO extends GenericDAO<FeedEntryStatus> {
}
}
private void setTimeout(Query query) {
query.setHint("javax.persistence.query.timeout", 20000);
}
public void markFeedEntries(User user, Feed feed, Date olderThan) {
List<FeedEntryStatus> statuses = findByFeed(feed, user, true,
ReadingOrder.desc, false);