@ -9,7 +9,6 @@ class Vacuum::PreviewCardsVacuum
def perform
def perform
vacuum_cached_images! if retention_period?
vacuum_cached_images! if retention_period?
vacuum_orphaned_records!
end
end
private
private
@ -21,18 +20,10 @@ class Vacuum::PreviewCardsVacuum
end
end
end
end
def vacuum_orphaned_records!
orphaned_preview_cards . in_batches . destroy_all
end
def preview_cards_past_retention_period
def preview_cards_past_retention_period
PreviewCard . cached . where ( PreviewCard . arel_table [ :updated_at ] . lt ( @retention_period . ago ) )
PreviewCard . cached . where ( PreviewCard . arel_table [ :updated_at ] . lt ( @retention_period . ago ) )
end
end
def orphaned_preview_cards
PreviewCard . where ( 'NOT EXISTS (SELECT 1 FROM preview_cards_statuses WHERE preview_cards_statuses.preview_card_id = preview_cards.id)' ) . where ( PreviewCard . arel_table [ :created_at ] . lt ( TTL . ago ) )
end
def retention_period?
def retention_period?
@retention_period . present?
@retention_period . present?
end
end