forked from Archives/Athou_commafeed
subquery for retrieving feeds to refresh was not connected to main query
This commit is contained in:
@@ -21,7 +21,7 @@ import com.querydsl.jpa.JPQLQuery;
|
||||
@Singleton
|
||||
public class FeedDAO extends GenericDAO<Feed> {
|
||||
|
||||
private QFeed feed = QFeed.feed;
|
||||
private final QFeed feed = QFeed.feed;
|
||||
|
||||
@Inject
|
||||
public FeedDAO(SessionFactory sessionFactory) {
|
||||
@@ -36,9 +36,7 @@ public class FeedDAO extends GenericDAO<Feed> {
|
||||
QFeedSubscription subs = QFeedSubscription.feedSubscription;
|
||||
QUser user = QUser.user;
|
||||
|
||||
JPQLQuery<Integer> subQuery = JPAExpressions.selectOne().from(subs);
|
||||
subQuery.join(subs.user, user).where(user.lastLogin.gt(lastLoginThreshold));
|
||||
query.where(subQuery.exists());
|
||||
query.join(feed.subscriptions, subs).join(subs.user, user).where(user.lastLogin.gt(lastLoginThreshold));
|
||||
}
|
||||
|
||||
return query.orderBy(feed.disabledUntil.asc()).limit(count).distinct().fetch();
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
package com.commafeed.backend.model;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.Set;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
import javax.persistence.Temporal;
|
||||
import javax.persistence.TemporalType;
|
||||
@@ -121,4 +123,7 @@ public class Feed extends AbstractModel {
|
||||
@Temporal(TemporalType.TIMESTAMP)
|
||||
private Date pushLastPing;
|
||||
|
||||
@OneToMany(mappedBy = "feed")
|
||||
private Set<FeedSubscription> subscriptions;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user