diff --git a/apps/reader/models.py b/apps/reader/models.py index ba714bd38..80d37cd9b 100644 --- a/apps/reader/models.py +++ b/apps/reader/models.py @@ -122,15 +122,16 @@ class UserSubscription(models.Model): if not feed_ids: return story_hashes - read_dates = dict() - for us in usersubs: - read_dates[us.feed_id] = int(max(us.mark_read_date, cutoff_date).strftime('%s')) current_time = int(time.time() + 60*60*24) if not cutoff_date: cutoff_date = datetime.datetime.now() - datetime.timedelta(days=settings.DAYS_OF_STORY_HASHES) unread_timestamp = int(time.mktime(cutoff_date.timetuple()))-1000 feed_counter = 0 + read_dates = dict() + for us in usersubs: + read_dates[us.feed_id] = int(max(us.mark_read_date, cutoff_date).strftime('%s')) + for feed_id_group in chunks(feed_ids, 20): pipeline = r.pipeline() for feed_id in feed_id_group: diff --git a/apps/social/models.py b/apps/social/models.py index 758ef8b89..f5ef9929e 100644 --- a/apps/social/models.py +++ b/apps/social/models.py @@ -910,16 +910,16 @@ class MSocialSubscription(mongo.Document): if not subscription_user_ids: return story_hashes - read_dates = dict() - for us in socialsubs: - read_dates[us.subscription_user_id] = int(max(us.mark_read_date, cutoff_date).strftime('%s')) - current_time = int(time.time() + 60*60*24) if not cutoff_date: cutoff_date = datetime.datetime.now() - datetime.timedelta(days=settings.DAYS_OF_STORY_HASHES) unread_timestamp = int(time.mktime(cutoff_date.timetuple()))-1000 feed_counter = 0 + read_dates = dict() + for us in socialsubs: + read_dates[us.subscription_user_id] = int(max(us.mark_read_date, cutoff_date).strftime('%s')) + for sub_user_id_group in chunks(subscription_user_ids, 20): pipeline = r.pipeline() for sub_user_id in sub_user_id_group: