17 lines
		
	
	
	
		
			582 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			17 lines
		
	
	
	
		
			582 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| class AccountIdsToTimestampIds < ActiveRecord::Migration[5.1]
 | |
|   def up
 | |
|     # Set up the accounts.id column to use our timestamp-based IDs.
 | |
|     safety_assured do
 | |
|       execute("ALTER TABLE accounts ALTER COLUMN id SET DEFAULT timestamp_id('accounts')")
 | |
|     end
 | |
| 
 | |
|     # Make sure we have a sequence to use.
 | |
|     Mastodon::Snowflake.ensure_id_sequences_exist
 | |
|   end
 | |
| 
 | |
|   def down
 | |
|     execute("LOCK accounts")
 | |
|     execute("SELECT setval('accounts_id_seq', (SELECT MAX(id) FROM accounts))")
 | |
|     execute("ALTER TABLE accounts ALTER COLUMN id SET DEFAULT nextval('accounts_id_seq')")
 | |
|   end
 | |
| end
 |