Commit 2f40fc52 authored by Rémy Coutable's avatar Rémy Coutable

Disable the inheritance column of services in DisableInvalidServiceTemplates migration

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: default avatarRémy Coutable <remy@rymai.me>
parent 11dd2348
---
title: Fix broken migration when upgrading straight to 8.17.1
merge_request: 9613
author:
class DisableInvalidServiceTemplates < ActiveRecord::Migration class DisableInvalidServiceTemplates < ActiveRecord::Migration
DOWNTIME = false DOWNTIME = false
unless defined?(Service)
class Service < ActiveRecord::Base class Service < ActiveRecord::Base
self.inheritance_column = nil self.inheritance_column = nil
end end
end
def up def up
Service.where(template: true, active: true).each do |template| Service.where(template: true, active: true).each do |template|
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment