schema_checker rake task shows DB schema issues even for clean environments
Summary
Schema checker rake task introduced in GitLab 15.11 shows DB schema issues even on clean environments.
Steps to reproduce
- Install GitLab 17.0.1 (or other version with schema_checker rake task available).
- Run
gitlab-rake gitlab:db:schema_checker:run
and check its output.
What is the current bug behavior?
gitlab-rake gitlab:db:schema_checker:run
will show a lot of DB issues even on a clean test environment.
What is the expected correct behavior?
It is not expected that gitlab-rake gitlab:db:schema_checker:run
will show any DB schema issues on a clean environment.
Relevant logs and/or screenshots
Expand for the full Schema Checker output on a clean test instance of GitLab 17.0.1
------------------------------------------------------ The table p_ci_build_names has a different column statement between structure.sql and database Diff: -CREATE TABLE p_ci_build_names (search_vector tsvector DEFAULT to_tsvector('english'::regconfig, COALESCE(name, ''::text))) +CREATE TABLE p_ci_build_names (search_vector tsvector) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants (self_and_descendant_group_ids bigint[] DEFAULT '95735'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '95800'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '95863'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_00 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_00 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_00 (self_and_descendant_group_ids bigint[] DEFAULT '96163'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '96228'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '96291'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_01 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_01 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_01 (self_and_descendant_group_ids bigint[] DEFAULT '96558'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '96623'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '96686'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_02 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_02 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_02 (self_and_descendant_group_ids bigint[] DEFAULT '96953'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '97018'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '97081'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_03 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_03 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_03 (self_and_descendant_group_ids bigint[] DEFAULT '97348'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '97413'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '97476'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_04 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_04 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_04 (self_and_descendant_group_ids bigint[] DEFAULT '97743'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '97808'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '97871'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_05 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_05 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_05 (self_and_descendant_group_ids bigint[] DEFAULT '98138'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '98203'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '98266'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_06 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_06 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_06 (self_and_descendant_group_ids bigint[] DEFAULT '98533'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '98598'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '98661'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_07 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_07 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_07 (self_and_descendant_group_ids bigint[] DEFAULT '98928'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '98993'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '99056'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_08 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_08 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_08 (self_and_descendant_group_ids bigint[] DEFAULT '99323'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '99388'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '99451'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_09 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_09 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_09 (self_and_descendant_group_ids bigint[] DEFAULT '99718'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '99783'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '99846'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_10 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_10 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_10 (self_and_descendant_group_ids bigint[] DEFAULT '100113'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '100178'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '100241'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_11 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_11 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_11 (self_and_descendant_group_ids bigint[] DEFAULT '100508'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '100573'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '100636'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_12 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_12 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_12 (self_and_descendant_group_ids bigint[] DEFAULT '100903'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '100968'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '101031'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_13 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_13 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_13 (self_and_descendant_group_ids bigint[] DEFAULT '101298'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '101363'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '101426'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_14 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_14 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_14 (self_and_descendant_group_ids bigint[] DEFAULT '101693'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '101758'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '101821'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_15 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_15 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_15 (self_and_descendant_group_ids bigint[] DEFAULT '102088'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '102153'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '102216'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_16 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_16 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_16 (self_and_descendant_group_ids bigint[] DEFAULT '102483'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '102548'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '102611'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_17 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_17 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_17 (self_and_descendant_group_ids bigint[] DEFAULT '102878'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '102943'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '103006'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_18 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_18 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_18 (self_and_descendant_group_ids bigint[] DEFAULT '103273'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '103338'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '103401'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_19 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_19 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_19 (self_and_descendant_group_ids bigint[] DEFAULT '103668'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '103733'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '103796'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_20 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_20 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_20 (self_and_descendant_group_ids bigint[] DEFAULT '104063'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '104128'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '104191'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_21 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_21 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_21 (self_and_descendant_group_ids bigint[] DEFAULT '104458'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '104523'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '104586'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_22 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_22 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_22 (self_and_descendant_group_ids bigint[] DEFAULT '104853'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '104918'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '104981'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_23 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_23 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_23 (self_and_descendant_group_ids bigint[] DEFAULT '105248'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '105313'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '105376'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_24 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_24 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_24 (self_and_descendant_group_ids bigint[] DEFAULT '105643'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '105708'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '105771'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_25 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_25 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_25 (self_and_descendant_group_ids bigint[] DEFAULT '106038'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '106103'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '106166'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_26 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_26 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_26 (self_and_descendant_group_ids bigint[] DEFAULT '106433'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '106498'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '106561'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_27 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_27 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_27 (self_and_descendant_group_ids bigint[] DEFAULT '106828'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '106893'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '106956'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_28 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_28 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_28 (self_and_descendant_group_ids bigint[] DEFAULT '107223'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '107288'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '107351'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_29 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_29 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_29 (self_and_descendant_group_ids bigint[] DEFAULT '107618'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '107683'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '107746'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_30 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_30 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_30 (self_and_descendant_group_ids bigint[] DEFAULT '108013'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '108078'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '108141'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table namespace_descendants_31 has a different column statement between structure.sql and database Diff: -CREATE TABLE namespace_descendants_31 (self_and_descendant_group_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT ARRAY[]::bigint[] NOT NULL) +CREATE TABLE namespace_descendants_31 (self_and_descendant_group_ids bigint[] DEFAULT '108408'::bigint[] NOT NULL, all_project_ids bigint[] DEFAULT '108473'::bigint[] NOT NULL, traversal_ids bigint[] DEFAULT '108536'::bigint[] NOT NULL) ------------------------------------------------------ ------------------------------------------------------ The table catalog_resources has a different column statement between structure.sql and database Diff: -CREATE TABLE catalog_resources (search_vector tsvector DEFAULT (setweight(to_tsvector('english'::regconfig, (COALESCE(name, ''::character varying))::text), 'A'::"char") || setweight(to_tsvector('english'::regconfig, COALESCE(description, ''::text)), 'B'::"char"))) +CREATE TABLE catalog_resources (search_vector tsvector) ------------------------------------------------------
Output of checks
Results of GitLab environment info
Expand for output related to GitLab environment info
System information System: Proxy: no Current User: git Using RVM: no Ruby Version: 3.1.5p253 Gem Version: 3.5.9 Bundler Version:2.5.9 Rake Version: 13.0.6 Redis Version: 7.0.15 Sidekiq Version:7.1.6 Go Version: unknown GitLab information Version: 17.0.1-ee Revision: cf71f280df3 Directory: /opt/gitlab/embedded/service/gitlab-rails DB Adapter: PostgreSQL DB Version: 14.11 URL: http://gitlabhost.tld HTTP Clone URL: http://gitlabhost.tld/some-group/some-project.git SSH Clone URL: git@gitlabhost.tld:some-group/some-project.git Elasticsearch: no Geo: no Using LDAP: no Using Omniauth: yes Omniauth Providers: GitLab Shell Version: 14.35.0 Repository storages: - default: unix:/var/opt/gitlab/gitaly/gitaly.socket GitLab Shell path: /opt/gitlab/embedded/service/gitlab-shell Gitaly - default Address: unix:/var/opt/gitlab/gitaly/gitaly.socket - default Version: 17.0.1 - default Git Version: 2.44.1.gl1
Additional information
Based on the comment in #390719 (comment 1867481190), schema errors appear after every upgrade. I reproduced it when upgrading from 16.10.5 to 16.11.4. Besides the namespace_descendants*
and other stuff mentioned above, there appeared one more issue:
------------------------------------------------------
The table p_ci_build_names has a different column statement between structure.sql and database
Diff:
-CREATE TABLE p_ci_build_names (search_vector tsvector DEFAULT to_tsvector('english'::regconfig, COALESCE(name, ''::text)))
+CREATE TABLE p_ci_build_names (search_vector tsvector)
------------------------------------------------------