about summary refs log tree commit diff
path: root/db/migrate/20200521180606_encrypted_message_ids_to_timestamp_ids.rb
blob: c5c80b7953b00093a41c2dbb32d1bd446a7ab24e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
class EncryptedMessageIdsToTimestampIds < ActiveRecord::Migration[5.2]
  def up
    safety_assured do
      execute("ALTER TABLE encrypted_messages ALTER COLUMN id SET DEFAULT timestamp_id('encrypted_messages')")
    end
  end

  def down
    execute('LOCK encrypted_messages')
    execute("SELECT setval('encrypted_messages_id_seq', (SELECT MAX(id) FROM encrypted_messages))")
    execute("ALTER TABLE encrypted_messages ALTER COLUMN id SET DEFAULT nextval('encrypted_messages_id_seq')")
  end
end