diff --git a/src/main/java/com/commafeed/backend/dao/FeedEntryStatusDAO.java b/src/main/java/com/commafeed/backend/dao/FeedEntryStatusDAO.java index 42ef0740..fa03ca91 100644 --- a/src/main/java/com/commafeed/backend/dao/FeedEntryStatusDAO.java +++ b/src/main/java/com/commafeed/backend/dao/FeedEntryStatusDAO.java @@ -16,6 +16,7 @@ import javax.persistence.criteria.Path; import javax.persistence.criteria.Predicate; import javax.persistence.criteria.Root; import javax.persistence.criteria.Selection; +import javax.persistence.criteria.SetJoin; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; @@ -318,14 +319,12 @@ public class FeedEntryStatusDAO extends GenericDAO { CriteriaQuery query = builder.createQuery(FeedEntry.class); Root root = query.from(FeedEntry.class); - Join feedJoin = root.join(FeedEntry_.feedRelationships).join(FeedFeedEntry_.feed); - Join subJoin = feedJoin - .join(Feed_.subscriptions); + Join ffeJoin = root.join(FeedEntry_.feedRelationships); List predicates = Lists.newArrayList(); - predicates.add(builder.equal(subJoin.get(FeedSubscription_.id), - subscription.getId())); + predicates.add(builder.equal(ffeJoin.get(FeedFeedEntry_.feed), + subscription.getFeed())); if (newerThan != null) { predicates.add(builder.greaterThanOrEqualTo(