[odrs-web] Get records as required



commit 81b98a9ce86c967b3d22a408d82abf495e6e17b8
Author: Richard Hughes <richard hughsie com>
Date:   Thu Mar 17 14:04:23 2022 +0000

    Get records as required

 app_data/cron.py           | 9 ++++-----
 app_data/odrs/util.py      | 1 -
 app_data/odrs/views_api.py | 5 ++---
 3 files changed, 6 insertions(+), 9 deletions(-)
---
diff --git a/app_data/cron.py b/app_data/cron.py
index 5e53275..d6e7c9f 100755
--- a/app_data/cron.py
+++ b/app_data/cron.py
@@ -29,7 +29,6 @@ def _fsck_components():
         db.session.query(Component)
         .filter(Component.app_id != "")
         .order_by(Component.app_id.asc())
-        .all()
     ):
         components[component.app_id] = component
 
@@ -119,7 +118,7 @@ def _fsck():
 
 def _regenerate_ratings(fn):
     item = {}
-    for component in db.session.query(Component).order_by(Component.app_id.asc()).all():
+    for component in db.session.query(Component).order_by(Component.app_id.asc()):
         ratings = _get_rating_for_component(component, 2)
         if len(ratings) == 0:
             continue
@@ -134,7 +133,7 @@ def _taboo_check():
 
     # this is moderately expensive, so cache for each locale
     taboos = {}
-    for review in db.session.query(Review).filter(Review.reported < 5).all():
+    for review in db.session.query(Review).filter(Review.reported < 5):
         if review.locale not in taboos:
             taboos[review.locale] = _get_taboos_for_locale(review.locale)
         matched_taboos = review.matches_taboos(taboos[review.locale])
@@ -149,7 +148,7 @@ def _appstream_import(fn):
 
     # get existing components
     app_ids = {}
-    for component in db.session.query(Component).all():
+    for component in db.session.query(Component):
         app_ids[component.app_id] = component
 
     # parse xml
@@ -220,7 +219,7 @@ def _taboo_import(fn):
 
     # get all the taboos in one database call
     taboos = {}
-    for taboo in db.session.query(Taboo).all():
+    for taboo in db.session.query(Taboo):
         key = taboo.locale + ":" + taboo.value
         taboos[key] = taboo
 
diff --git a/app_data/odrs/util.py b/app_data/odrs/util.py
index 51e76e9..f0e99cb 100644
--- a/app_data/odrs/util.py
+++ b/app_data/odrs/util.py
@@ -76,7 +76,6 @@ def _get_rating_for_component(component, min_total=1):
         db.session.query(Review.rating)
         .join(Component)
         .filter(Component.app_id.in_(component.app_ids))
-        .all()
     ):
         idx = int(rating[0] / 20)
         if idx > 5:
diff --git a/app_data/odrs/views_api.py b/app_data/odrs/views_api.py
index 7a5f27b..54e26ce 100644
--- a/app_data/odrs/views_api.py
+++ b/app_data/odrs/views_api.py
@@ -288,7 +288,6 @@ def api_fetch():
         .join(Component)
         .filter(Component.app_id.in_(app_ids))
         .filter(Review.reported < ODRS_REPORTED_CNT)
-        .all()
     )
 
     # if user does not exist then create
@@ -363,7 +362,7 @@ def api_moderate(user_hash, locale=None):
     user = db.session.query(User).filter(User.user_hash == user_hash).first()
     if not user:
         return json_error("no user for {}".format(user_hash))
-    for review in db.session.query(Review).all():
+    for review in db.session.query(Review):
         if locale and not _locale_is_compatible(review.locale, locale):
             continue
         if _vote_exists(review.review_id, user.user_id):
@@ -597,7 +596,7 @@ def api_ratings():
     Get the star ratings for all known applications.
     """
     item = {}
-    for component in db.session.query(Component).order_by(Component.app_id.asc()).all():
+    for component in db.session.query(Component).order_by(Component.app_id.asc()):
         ratings = _get_rating_for_component(component, 2)
         if len(ratings) == 0:
             continue


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]