Skip to content

Track group wiki storage in DB

Markus Koller requested to merge group-wiki-repository-storage into master

What does this MR do?

  • Add new GroupWikiRepository table.
  • Track shard and disk path when creating a group wiki repository.

Ref: #207865 (closed)

Migration output

db:migrate
== 20200430103158 CreateGroupWikiRepositories: migrating ======================
-- create_table(:group_wiki_repositories, {:id=>false})
   -> 0.0118s
== 20200430103158 CreateGroupWikiRepositories: migrated (0.0119s) =============

== 20200511121549 AddGroupWikiRepositoriesShardIdForeignKey: migrating ========
-- add_foreign_key(:group_wiki_repositories, :shards, {:on_delete=>:restrict})
   -> 0.0017s
== 20200511121549 AddGroupWikiRepositoriesShardIdForeignKey: migrated (0.0055s) 

== 20200511121610 AddGroupWikiRepositoriesGroupIdForeignKey: migrating ========
-- add_foreign_key(:group_wiki_repositories, :namespaces, {:column=>:group_id, :on_delete=>:cascade})
   -> 0.0019s
== 20200511121610 AddGroupWikiRepositoriesGroupIdForeignKey: migrated (0.0034s) 

== 20200511121620 AddGroupWikiRepositoriesDiskPathLimit: migrating ============
-- transaction_open?()
   -> 0.0000s
-- execute("ALTER TABLE group_wiki_repositories\nADD CONSTRAINT check_07f1c81806\nCHECK ( char_length(disk_path) <= 80 )\nNOT VALID;\n")
   -> 0.0004s
-- execute("ALTER TABLE group_wiki_repositories VALIDATE CONSTRAINT check_07f1c81806;")
   -> 0.0010s
== 20200511121620 AddGroupWikiRepositoriesDiskPathLimit: migrated (0.0056s) ===
db:rollback
== 20200511121620 AddGroupWikiRepositoriesDiskPathLimit: reverting ============
-- execute("ALTER TABLE group_wiki_repositories\nDROP CONSTRAINT IF EXISTS check_07f1c81806\n")
   -> 0.0007s
== 20200511121620 AddGroupWikiRepositoriesDiskPathLimit: reverted (0.0050s) ===

== 20200511121610 AddGroupWikiRepositoriesGroupIdForeignKey: reverting ========
-- remove_foreign_key(:group_wiki_repositories, :namespaces, {:column=>:group_id})
   -> 0.0040s
== 20200511121610 AddGroupWikiRepositoriesGroupIdForeignKey: reverted (0.0074s)

== 20200511121549 AddGroupWikiRepositoriesShardIdForeignKey: reverting ========
-- remove_foreign_key(:group_wiki_repositories, :shards)
   -> 0.0035s
== 20200511121549 AddGroupWikiRepositoriesShardIdForeignKey: reverted (0.0069s)

== 20200430103158 CreateGroupWikiRepositories: reverting ======================
-- drop_table(:group_wiki_repositories, {:id=>false})
   -> 0.0012s
== 20200430103158 CreateGroupWikiRepositories: reverted (0.0027s) =============

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team
Edited by 🤖 GitLab Bot 🤖

Merge request reports