Merge remote-tracking branch 'upstream/pull/5667'

This commit is contained in:
Tom Hughes 2025-03-02 10:54:39 +00:00
commit b8b9c3d1e9
2 changed files with 31 additions and 0 deletions

View file

@ -0,0 +1,30 @@
class BackfillNoteDescriptions < ActiveRecord::Migration[7.2]
class Note < ApplicationRecord; end
class NoteComment < ApplicationRecord; end
disable_ddl_transaction!
def up
Note.in_batches(:of => 1000) do |notes|
note_ids = notes.pluck(:id)
sql_query = <<-SQL.squish
WITH first_comment AS(
SELECT DISTINCT ON (note_id) *
FROM note_comments
WHERE note_id BETWEEN #{note_ids.min} AND #{note_ids.max}
ORDER BY note_id, id
)
UPDATE notes
SET description = first_comment.body,
user_id = first_comment.author_id,
user_ip = first_comment.author_ip
FROM first_comment
WHERE first_comment.note_id = notes.id
AND first_comment.event = 'opened';
SQL
ActiveRecord::Base.connection.execute(sql_query)
end
end
end

View file

@ -3429,6 +3429,7 @@ INSERT INTO "schema_migrations" (version) VALUES
('23'), ('23'),
('22'), ('22'),
('21'), ('21'),
('20250212160355'),
('20250206202905'), ('20250206202905'),
('20250121191749'), ('20250121191749'),
('20250105154621'), ('20250105154621'),