]> cat aescling's git repositories - mastodon.git/commitdiff
Fix upgrade path from 3.4.0 (#16465)
authorClaire <claire.github-309c@sitedethib.com>
Wed, 7 Jul 2021 19:13:30 +0000 (21:13 +0200)
committerGitHub <noreply@github.com>
Wed, 7 Jul 2021 19:13:30 +0000 (21:13 +0200)
3.4.1 dropped account_stats.lock_version, but in a way breaking the usual
upgrade path by requiring services to be reloaded after the post-migrations.

Indeed, `self.locking_column = nil` was not enough for Rails to ignore the
`lock_version` column when preparing statements on application load, resulting
in some ActiveRecord queries (typically those involving
`includes(:account_stat)`) erroring out with:

  ActiveRecord::StatementInvalid (PG::UndefinedColumn: ERROR:  column account_stats.lock_version does not exist

app/models/account_stat.rb

index 44da4f0d00c831de4c754fad049ea6b7b3b0e504..e702fa4a44fbbd417614471ed8792b88aac3e9a3 100644 (file)
@@ -15,6 +15,7 @@
 
 class AccountStat < ApplicationRecord
   self.locking_column = nil
+  self.ignored_columns = %w(lock_version)
 
   belongs_to :account, inverse_of: :account_stat