From 2f40fc521e572fb4043cfa5e57616b4e5214033a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Coutable?= Date: Wed, 1 Mar 2017 11:26:44 +0100 Subject: [PATCH] Disable the inheritance column of services in DisableInvalidServiceTemplates migration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The `unless defined?(Service)` was useless since in production env, models are eager loaded, thus we wouldn't disable the STI, resulting in the following error: The single-table inheritance mechanism failed to locate the subclass: 'GitlabCiService'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Service.inheritance_column to use another column for that information./opt/gitlab/embedded/service/gitlab-rails/db/post_migrate/20170211073944_disable_invalid_service_templates.rb:11:in `up' Signed-off-by: Rémy Coutable --- changelogs/unreleased/28850-fix-broken-migration.yml | 4 ++++ .../20170211073944_disable_invalid_service_templates.rb | 6 ++---- 2 files changed, 6 insertions(+), 4 deletions(-) create mode 100644 changelogs/unreleased/28850-fix-broken-migration.yml diff --git a/changelogs/unreleased/28850-fix-broken-migration.yml b/changelogs/unreleased/28850-fix-broken-migration.yml new file mode 100644 index 00000000000..7f59a7708bc --- /dev/null +++ b/changelogs/unreleased/28850-fix-broken-migration.yml @@ -0,0 +1,4 @@ +--- +title: Fix broken migration when upgrading straight to 8.17.1 +merge_request: 9613 +author: diff --git a/db/post_migrate/20170211073944_disable_invalid_service_templates.rb b/db/post_migrate/20170211073944_disable_invalid_service_templates.rb index 84954b1ef64..603efc43782 100644 --- a/db/post_migrate/20170211073944_disable_invalid_service_templates.rb +++ b/db/post_migrate/20170211073944_disable_invalid_service_templates.rb @@ -1,10 +1,8 @@ class DisableInvalidServiceTemplates < ActiveRecord::Migration DOWNTIME = false - unless defined?(Service) - class Service < ActiveRecord::Base - self.inheritance_column = nil - end + class Service < ActiveRecord::Base + self.inheritance_column = nil end def up