From b75116d13c1c8f538a9af78f46eab021c878015b Mon Sep 17 00:00:00 2001 From: Kyle Drake Date: Fri, 28 Aug 2015 01:04:17 -0700 Subject: [PATCH] index score, filter site_changed for compute --- migrations/077_decimal_sauce_index.rb | 9 +++++++++ models/site.rb | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 migrations/077_decimal_sauce_index.rb diff --git a/migrations/077_decimal_sauce_index.rb b/migrations/077_decimal_sauce_index.rb new file mode 100644 index 00000000..fa242b45 --- /dev/null +++ b/migrations/077_decimal_sauce_index.rb @@ -0,0 +1,9 @@ +Sequel.migration do + up { + DB.add_index :sites, :score + } + + down { + DB.drop_index :sites, :score + } +end diff --git a/models/site.rb b/models/site.rb index 65144fab..28651eb6 100644 --- a/models/site.rb +++ b/models/site.rb @@ -1077,7 +1077,7 @@ class Site < Sequel::Model end def self.compute_scores - select(:id, :username, :created_at, :updated_at, :views, :featured_at, :changed_count).exclude(is_banned: true).exclude(is_crashing: true).exclude(is_nsfw: true).exclude(updated_at: nil).all.each do |s| + select(:id, :username, :created_at, :updated_at, :views, :featured_at, :changed_count).exclude(is_banned: true).exclude(is_crashing: true).exclude(is_nsfw: true).exclude(updated_at: nil).where(site_changed: true).all.each do |s| s.score = s.compute_score s.save_changes validate: false end