Class: MigrateTablesToUuidPrimaryKey
Constant Summary
collapse
- TABLE_TO_FOREIGN_KEYS =
{
ductwork_pipelines: [],
ductwork_steps: [:pipeline],
ductwork_jobs: [:step],
ductwork_executions: [:job],
ductwork_availabilities: [:execution],
ductwork_runs: [:execution],
ductwork_results: [:execution],
ductwork_tuples: [:pipeline],
ductwork_processes: [],
}.freeze
- FOREIGN_KEY_TO_TABLES =
{
pipeline: %i[ductwork_steps ductwork_tuples],
step: %i[ductwork_jobs],
job: %i[ductwork_executions],
execution: %i[ductwork_availabilities ductwork_runs ductwork_results],
availabilitie: [],
run: [],
result: [],
tuple: [],
processe: [],
}.freeze
Instance Method Summary
collapse
#belongs_to, #create_ductwork_table, #mysql?, #postgresql?, #uuid_column_type
Instance Method Details
#down ⇒ Object
37
38
39
40
|
# File 'lib/generators/ductwork/update/templates/db/migrate_tables_to_uuid_primary_key.rb', line 37
def down
raise ActiveRecord::IrreversibleMigration,
"Cannot revert UUID migration — old integer IDs have been dropped. Restore from backup."
end
|
#up ⇒ Object
27
28
29
30
31
32
33
34
35
|
# File 'lib/generators/ductwork/update/templates/db/migrate_tables_to_uuid_primary_key.rb', line 27
def up
create_primary_key_uuid_columns
create_foreign_key_uuid_columns
backfill_uuid_columns
drop_old_foreign_keys
swap_primary_keys
swap_foreign_keys
create_missing_indexes
end
|