Settings/Integrations page throwing 500 error
As in the title
Logs:
==> /var/log/gitlab/gitlab-rails/production.log <==
Started GET "/group/project/settings/integrations" for 192.168.96.1 at 2020-02-03 17:00:16 +0000
Processing by Projects::Settings::IntegrationsController#show as HTML
Parameters: {"namespace_id"=>"group", "project_id"=>"project"}
Completed 500 Internal Server Error in 10ms (ActiveRecord: 1.4ms)
==> /var/log/gitlab/gitlab-rails/production_json.log <==
{"method":"GET","path":"/group/project/settings/integrations","format":"html","controller":"Projects::Settings::IntegrationsController","action":"show","status":500,"error":"ActiveRecord::SubclassNotFound: The single-table inheritance mechanism failed to locate the subclass: 'GemnasiumService'. 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.","duration":11.01,"view":0.0,"db":1.41,"time":"2020-02-03T17:00:16.625Z","params":
==> /var/log/gitlab/gitlab-rails/production.log <==
ActiveRecord::SubclassNotFound (The single-table inheritance mechanism failed to locate the subclass: 'GemnasiumService'. 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.):
app/models/project.rb:895:in `find_service'
app/models/project.rb:871:in `block in find_or_initialize_services'
app/models/project.rb:864:in `map'
app/models/project.rb:864:in `find_or_initialize_services'
app/controllers/projects/settings/integrations_controller.rb:14:in `show'
lib/gitlab/i18n.rb:47:in `with_locale'
lib/gitlab/i18n.rb:53:in `with_user_locale'
app/controllers/application_controller.rb:334:in `set_locale'
lib/gitlab/middleware/multipart.rb:95:in `call'
lib/gitlab/request_profiler/middleware.rb:14:in `call'
lib/gitlab/middleware/go.rb:17:in `call'
lib/gitlab/etag_caching/middleware.rb:11:in `call'
lib/gitlab/middleware/read_only.rb:31:in `call'
lib/gitlab/request_context.rb:18:in `call'
lib/gitlab/metrics/requests_rack_middleware.rb:27:in `call'
Looks like there are couple of tables with type
column, so we might be looking into
overwrite Service.inheritance_column to use another column
gitlabhq_production=# select t.table_schema,
t.table_name
from information_schema.tables t
inner join information_schema.columns c on c.table_name = t.table_name
and c.table_schema = t.table_schema
where c.column_name = 'type'
and t.table_schema not in ('information_schema', 'pg_catalog')
and t.table_type = 'BASE TABLE'
order by t.table_schema;
table_schema | table_name
--------------+--------------
public | audit_events
public | ci_builds
public | keys
public | labels
public | members
public | namespaces
public | notes
public | services
public | snippets
public | web_hooks
(10 rows)
Edited by Błażej Cegiełka