#77 Cache also orphan user page
Merged 3 years ago by frantisekz. Opened 3 years ago by frantisekz.

file modified
+2 -1
@@ -28,7 +28,7 @@ 

  

  from oraculum.controllers.landing_page import api_v1_landing_page

  from oraculum.controllers.libkarma import all_bodhi_updates

- from oraculum.controllers.packager_dashboard import dashboard_user_data_static

+ from oraculum.controllers.packager_dashboard import dashboard_user_data_static, handle_orphan_user

  

  

  @app.before_first_request
@@ -62,6 +62,7 @@ 

      CACHE.register('packager-dashboard_bugs', dashboard.get_package_bugs)

      CACHE.register('packager-dashboard_pull_requests', dashboard.get_package_prs)

      CACHE.register('packager-dashboard_package_versions', dashboard.get_package_versions)

+     CACHE.register('packager-dashboard_orphan_page', handle_orphan_user)

  

  

  @app.route('/api/v1/releases')

@@ -41,7 +41,7 @@ 

      static_info['orphans'] = dashboard.get_orphans(static_info['packages'])

  

      return {

-         'static_info': {"data": static_info, 'status': 200, 'last_synced': CACHE.get_refreshed_time('orphans_json')},

+         'static_info': {"data": static_info, 'status': 200, 'last_synced': CACHE.get_refreshed_time('orphans_json').isoformat()},

          'prs': empty,

          'bzs': empty,

          'package_versions': empty
@@ -51,7 +51,7 @@ 

  @app.route('/api/v1/packager_dashboard/<user>', methods=['GET'])

  def route_dashboard_user_data(user):

      if user == 'orphan':

-         return jsonify(handle_orphan_user())

+         return jsonify(CACHE.get('packager-dashboard_orphan_page'))

      packages_promise = CACHE.async_get('packager-dashboard_user_data_static', 'high', user)

      last_synced = CACHE.get_refreshed_time('packager-dashboard_user_data_static', user)

      if packages_promise == cache_utils.RefresherNotRegistered:

@@ -104,6 +104,10 @@ 

          app.logger.debug("Adding periodic task %s every %s seconds" % (syncer, SYNC_INTERVALS[syncer]))

          sender.add_periodic_task(SYNC_INTERVALS[syncer], plan_celery_refresh.s('medium', syncer), priority=0)

  

+     # Let's cache also data for orphan page

+     app.logger.debug("Adding periodic task %s every %s seconds" % ("packager-dashboard_orphan_page", SYNC_INTERVALS["orphans_json"]))

+     sender.add_periodic_task(SYNC_INTERVALS["orphans_json"], plan_celery_refresh.s('medium', 'packager-dashboard_orphan_page'), priority=0)

+ 

      # Packager Dashboard - Sync data for users who meet criteria for cached access to the site

      app.logger.debug("Adding periodic task packager_dashboard_user_data every %s seconds" %

                       SYNC_INTERVALS["packager_dashboard_static_user_data"])

no initial comment

rebased onto 613f480

3 years ago

Pull-Request has been merged by frantisekz

3 years ago