This repository was archived by the owner on Jun 30, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
Dashboard sql optimization #241
Copy link
Copy link
Open
Description
We have a couple really slow queries on our dashboard that causes a very slow page load.
These two are the main culprits:
auk/app/helpers/dashboards_helper.rb
Lines 61 to 67 in bdd62ac
| def get_largest_collection | |
| largest_collection = WasapiFile.group(:user_id) | |
| .group(:collection_id) | |
| .sum(:size) | |
| .max_by { |_k, v| v } | |
| number_to_human_size(largest_collection[1]) | |
| end |
883.0ms: SELECT SUM("wasapi_files"."size") AS sum_size, "wasapi_files"."user_id" AS wasapi_files_user_id, "wasapi_files"."collection_id" AS wasapi_files_collection_id FROM "wasapi_files" GROUP BY "wasapi_files"."user_id", "wasapi_files"."collection_id";
auk/app/helpers/dashboards_helper.rb
Lines 77 to 79 in bdd62ac
| def get_total_number_of_warcs | |
| WasapiFile.distinct.count(:filename) | |
| end |
22309.8ms: SELECT COUNT(DISTINCT "wasapi_files"."filename") FROM "wasapi_files";
Reactions are currently unavailable