Я использую адрон для Heroku Postgres для моей базы данных (базовая версия). Ruby Sequel - это мой ORM для управления схемой.Миграция Ruby Sequel работает, но не удается добавить столбцы
В последнее время некоторые миграции не обновили схему БД.
Я бегу миграции 19, 019_add_last_unique_story_to_user.rb:
Sequel.migration do
up do
alter_table(:state_tables) do
add_column :last_unique_story, Integer, default: 0
add_column :last_unique_story_read?, TrueClass, default: true
end
end
down do
alter_table(:state_tables) do
drop_column :last_unique_story
drop_column :last_unique_story_read?
end
end
end
Это обновляет БД [: schema_info] от версии 18 до 19, но столбцы не будут добавлены в: state_table таблице. Эта проблема существует как для производственных, так и для локальных баз данных. Я попытался выполнить миграцию несколько раз и проверил, что URL-адрес db верен.
Моих быстро исправить: скопировать и вставить код выше в двадцатого миграции, 020_test.rb и пробежал грабли миграции задачи rake db:migrate:up
. Это успешно обновило базу данных.
Кто-нибудь знает, что может быть здесь? Почему некоторые миграции выполняются успешно, обновляют версию миграции, но не обновляют столбцы? Может ли это быть проблемой имен, проблемой кеширования или проблемой Heroku? Спасибо за помощь!