Сборки Travis не проходят: post.cached_version не существует

У меня есть 3 плагина, для которых я настраиваю корректные сборки Travis, и все они начали падать вчера. Они все падают одинаково, и я не вижу, как эта проблема могла быть вызвана самими плагинами:

2020-05-01 00:29:58.212 UTC [334] ERROR:  column posts.cached_version does not exist at character 193
2020-05-01 00:29:58.212 UTC [334] HINT:  Perhaps you meant to reference the column "posts.baked_version".
2020-05-01 00:29:58.212 UTC [334] STATEMENT:  SELECT "posts"."id", "posts"."user_id", "posts"."topic_id", "posts"."post_number", "posts"."raw", "posts"."cooked", "posts"."created_at", "posts"."updated_at", "posts"."reply_to_post_number", "posts"."cached_version", "posts"."reply_count", "posts"."quote_count", "posts"."deleted_at", "posts"."off_topic_count", "posts"."like_count", "posts"."incoming_link_count", "posts"."bookmark_count", "posts"."score", "posts"."reads", "posts"."post_type", "posts"."vote_count", "posts"."sort_order", "posts"."last_editor_id", "posts"."hidden", "posts"."hidden_reason_id", "posts"."notify_moderators_count", "posts"."spam_count", "posts"."illegal_count", "posts"."inappropriate_count", "posts"."last_version_at", "posts"."user_deleted", "posts"."reply_to_user_id", "posts"."percent_rank", "posts"."notify_user_count", "posts"."like_score", "posts"."deleted_by_id" FROM "posts" WHERE ("posts"."deleted_at" IS NULL) AND 1=0
PG::UndefinedColumn: ERROR:  column posts.cached_version does not exist
LINE 1: ...ts"."updated_at", "posts"."reply_to_post_number", "posts"."c...

Я только что обновил один сайт, и всё заработало нормально, так что это не что-то, что влияет на работу сайтов в целом.

Я только что попробовал снова (прошло уже 14 часов!), и похоже, что проблема сохраняется. Нужно ли мне что-то обновить?

Так вот о чём вы говорите? Мы удалили этот столбец? Я помню, что @sam недавно удалял некоторые столбцы.

Много лет назад

Являются ли какие-либо из этих плагинов неофициальными? Вы устанавливаете старую версию календаря?

Все они неофициальные, иначе я бы их не тестировал. :wink:

Извините, если это было неясно.

Все они успешно проходят тесты уже как минимум несколько недель. Некоторое время назад они несколько дней не проходили тесты, но через пару дней снова начали работать.

Насколько мне известно, ни один из них не работает с календарём. Этот довольно прост, если захотите посмотреть.

Есть ли у кого-нибудь из них миграции?

Нет. Я не имею представления, как заставить их выполнять миграции. :wink:

Так, стало лучше. 14 часов назад https://travis-ci.org/ перезапустил сборку для моих кастомных плагинов, и все они прошли. Я ничего не менял. Это уже случалось как минимум один раз: сборки Travis падали, а через несколько дней снова начинали проходить без каких-либо действий с моей стороны.

Я сталкиваюсь с той же проблемой при выполнении миграций только с плагином discourse-ratings в стандартной среде разработки. Я не вижу никакого кода, который явно запрашивает столбец cached_version.

Хэш коммита: 093ee1d80c269afd00ba1341a3e71eb97e4ce7f1

Я выполнил RAILS_ENV=test rake db:drop db:create db:migrate, поэтому в базе данных не должно быть никаких данных.

Вот эта строка:

Хорошо, вот что сработало у нас. Мы вызывали reset_column_information для соответствующих таблиц перед миграцией. Каким-то образом колонка cached_version «закеширована» :wink: в кэше схемы. Также это, похоже, проблема, характерная особенно для окружения test.