Remove unused "outfits#new newest_items" cache
Huh! This cache key seemed to only be referenced in checks and expirations, but was never actually used! So I guess we've been loading the modeling predictions every time for a while huh?? We'll get smarter about that someday, but anyway, that lets us delete our Item resque tasks and ItemObserver!
This commit is contained in:
parent
41fdcb5abc
commit
1bf84b5106
5 changed files with 19 additions and 66 deletions
|
@ -46,31 +46,29 @@ class OutfitsController < ApplicationController
|
|||
@species = Species.alphabetical
|
||||
end
|
||||
|
||||
unless localized_fragment_exist?('outfits#new newest_items')
|
||||
newest_items = Item.newest.select([:id, :updated_at, :thumbnail_url, :rarity_index]).
|
||||
includes(:translations).limit(18)
|
||||
@newest_modeled_items, @newest_unmodeled_items =
|
||||
newest_items.partition(&:predicted_fully_modeled?)
|
||||
newest_items = Item.newest.select([:id, :updated_at, :thumbnail_url, :rarity_index]).
|
||||
includes(:translations).limit(18)
|
||||
@newest_modeled_items, @newest_unmodeled_items =
|
||||
newest_items.partition(&:predicted_fully_modeled?)
|
||||
|
||||
@newest_unmodeled_items_predicted_missing_species_by_color = {}
|
||||
@newest_unmodeled_items_predicted_modeled_ratio = {}
|
||||
@newest_unmodeled_items.each do |item|
|
||||
h = item.predicted_missing_nonstandard_body_ids_by_species_by_color(
|
||||
Color.includes(:translations).select([:id]),
|
||||
Species.includes(:translations).select([:id]))
|
||||
standard_body_ids_by_species = item.
|
||||
predicted_missing_standard_body_ids_by_species(
|
||||
Species.select([:id]).includes(:translations))
|
||||
if standard_body_ids_by_species.present?
|
||||
h[:standard] = standard_body_ids_by_species
|
||||
end
|
||||
@newest_unmodeled_items_predicted_missing_species_by_color[item] = h
|
||||
@newest_unmodeled_items_predicted_modeled_ratio[item] = item.predicted_modeled_ratio
|
||||
@newest_unmodeled_items_predicted_missing_species_by_color = {}
|
||||
@newest_unmodeled_items_predicted_modeled_ratio = {}
|
||||
@newest_unmodeled_items.each do |item|
|
||||
h = item.predicted_missing_nonstandard_body_ids_by_species_by_color(
|
||||
Color.includes(:translations).select([:id]),
|
||||
Species.includes(:translations).select([:id]))
|
||||
standard_body_ids_by_species = item.
|
||||
predicted_missing_standard_body_ids_by_species(
|
||||
Species.select([:id]).includes(:translations))
|
||||
if standard_body_ids_by_species.present?
|
||||
h[:standard] = standard_body_ids_by_species
|
||||
end
|
||||
|
||||
@species_count = Species.count
|
||||
@newest_unmodeled_items_predicted_missing_species_by_color[item] = h
|
||||
@newest_unmodeled_items_predicted_modeled_ratio[item] = item.predicted_modeled_ratio
|
||||
end
|
||||
|
||||
@species_count = Species.count
|
||||
|
||||
unless localized_fragment_exist?('outfits#new latest_contribution')
|
||||
@latest_contribution = Contribution.recent.first
|
||||
Contribution.preload_contributeds_and_parents([@latest_contribution].compact)
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
class Item
|
||||
class CreateTask
|
||||
extend FragmentExpiration
|
||||
|
||||
TIMEOUT_IN_SECONDS = 10
|
||||
|
||||
@queue = :item_create
|
||||
|
||||
def self.perform(id)
|
||||
Timeout::timeout(TIMEOUT_IN_SECONDS) do
|
||||
expire_newest_items
|
||||
end
|
||||
end
|
||||
|
||||
def self.expire_newest_items
|
||||
expire_fragment_in_all_locales('outfits#new newest_items')
|
||||
end
|
||||
end
|
||||
end
|
|
@ -1,16 +0,0 @@
|
|||
class Item
|
||||
class DestroyTask
|
||||
extend FragmentExpiration
|
||||
|
||||
TIMEOUT_IN_SECONDS = 10
|
||||
|
||||
@queue = :item_destroy
|
||||
|
||||
def self.perform(id)
|
||||
Timeout::timeout(TIMEOUT_IN_SECONDS) do
|
||||
# TODO: it's kinda ugly to reach across classes like this
|
||||
CreateTask.expire_newest_items
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
|
@ -1,9 +0,0 @@
|
|||
class ItemObserver < ActionController::Caching::Sweeper
|
||||
def after_create(item)
|
||||
Resque.enqueue(Item::CreateTask, item.id)
|
||||
end
|
||||
|
||||
def after_destroy(item)
|
||||
Resque.enqueue(Item::DestroyTask, item.id)
|
||||
end
|
||||
end
|
|
@ -100,7 +100,6 @@
|
|||
%abbr#latest-contribution-created-at{:title => @latest_contribution.created_at.getutc.iso8601}
|
||||
|
||||
#whats-new
|
||||
-# TODO: cache this entire block? or just request newest items every time?
|
||||
- if @newest_unmodeled_items.present?
|
||||
#modeling-neopets-users{'data-usernames' => @neopets_usernames.to_json}
|
||||
%h3= t '.newest_items.unmodeled.header'
|
||||
|
|
Loading…
Reference in a new issue