mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
faster migration by avoiding to query the db for local thumbnails
This commit is contained in:
parent
4536b5fe04
commit
e2ae3f0b45
@ -22,7 +22,7 @@ class BackfillPostUploadReverseIndex < ActiveRecord::Migration
|
|||||||
url = url[index..-1]
|
url = url[index..-1]
|
||||||
end
|
end
|
||||||
# filter out non-uploads
|
# filter out non-uploads
|
||||||
return unless url.starts_with?(local_base_url) || url.starts_with?(s3_base_url)
|
return unless is_local?(url) || is_on_s3?(url)
|
||||||
# update the reverse index
|
# update the reverse index
|
||||||
execute "INSERT INTO post_uploads (upload_id, post_id)
|
execute "INSERT INTO post_uploads (upload_id, post_id)
|
||||||
SELECT u.id, #{post_id}
|
SELECT u.id, #{post_id}
|
||||||
@ -35,8 +35,24 @@ class BackfillPostUploadReverseIndex < ActiveRecord::Migration
|
|||||||
@local_base_url ||= "/uploads/#{RailsMultisite::ConnectionManagement.current_db}"
|
@local_base_url ||= "/uploads/#{RailsMultisite::ConnectionManagement.current_db}"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def local_optimized_base_url
|
||||||
|
@local_optimized_base_url ||= "#{local_base_url}/_optimized/"
|
||||||
|
end
|
||||||
|
|
||||||
def s3_base_url
|
def s3_base_url
|
||||||
@s3_base_url ||= "//#{SiteSetting.s3_upload_bucket.downcase}.s3.amazonaws.com"
|
@s3_base_url ||= "//#{SiteSetting.s3_upload_bucket.downcase}.s3.amazonaws.com"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def is_local?(url)
|
||||||
|
url.starts_with?(local_base_url) && !is_local_thumbnail?(url)
|
||||||
|
end
|
||||||
|
|
||||||
|
def is_local_thumbnail?(url)
|
||||||
|
url.starts_with?(local_optimized_base_url)
|
||||||
|
end
|
||||||
|
|
||||||
|
def is_on_s3?(url)
|
||||||
|
url.starts_with?(s3_base_url)
|
||||||
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user