mirror of
https://github.com/discourse/discourse.git
synced 2025-02-06 11:28:18 +00:00
bddf94c0ab
The migration used to fail because the same duration in minutes was out of the integer range. The '20 years' limit was introduced in e0f0fe5.
15 lines
664 B
Ruby
15 lines
664 B
Ruby
# frozen_string_literal: true
|
|
class FixTopicTimerDurationMinutes < ActiveRecord::Migration[6.0]
|
|
def up
|
|
DB.exec("DELETE FROM topic_timers WHERE status_type = 7 AND duration > 20 * 365")
|
|
DB.exec("DELETE FROM topic_timers WHERE status_type != 7 AND duration > 20 * 365 * 24")
|
|
|
|
DB.exec("UPDATE topic_timers SET duration_minutes = (duration * 60 * 24) WHERE duration_minutes IS NULL AND status_type = 7 AND duration IS NOT NULL")
|
|
DB.exec("UPDATE topic_timers SET duration_minutes = (duration * 60) WHERE duration_minutes IS NULL AND status_type != 7 AND duration IS NOT NULL")
|
|
end
|
|
|
|
def down
|
|
raise ActiveRecord::IrreversibleMigration
|
|
end
|
|
end
|