mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 10:20:58 -06:00
FIX: reduce amount of work onceoff does
In the past onceoff was forcing inline download of gravatars, this can be so expensive that it will never finish This fix ensures it only marks avatars stale which will be picked up by regular schedules
This commit is contained in:
parent
4c2331260e
commit
8d06731484
@ -2,11 +2,13 @@ module Jobs
|
||||
class FixInvalidGravatarUploads < Jobs::Onceoff
|
||||
def execute_onceoff(args)
|
||||
Upload.where(original_filename: "gravatar.png").find_each do |upload|
|
||||
# note, this still feels pretty expensive for a once off
|
||||
# we may need to re-evaluate this
|
||||
extension = FastImage.type(Discourse.store.path_for(upload))
|
||||
current_extension = upload.extension
|
||||
|
||||
if extension.to_s.downcase != current_extension.to_s.downcase
|
||||
upload.user.user_avatar.update_gravatar!
|
||||
upload&.user&.user_avatar&.update_columns(last_gravatar_download_attempt: nil)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
Loading…
Reference in New Issue
Block a user