diff options
author | Mayra Cabrera <mcabrera@gitlab.com> | 2019-06-12 16:11:14 -0500 |
---|---|---|
committer | Mayra Cabrera <mcabrera@gitlab.com> | 2019-06-25 09:54:47 -0500 |
commit | bde41ee866d0fe0b1bb5ece1130fb6e24d95ad17 (patch) | |
tree | 8d52bc34eb73832357142b1cf5cb34a372b27f7f /db | |
parent | d6c7d4c48db51fdc3eb479e53d40ce4358695218 (diff) | |
download | gitlab-ce-bde41ee866d0fe0b1bb5ece1130fb6e24d95ad17.tar.gz |
Add two new ActiveRecord models62214-migrations-and-models
- Namespace::Storagestatistics will persist root namespace statistics
- Namespace::AggregationSchedule will save information when a new update
to the namespace statistics needs to be scheduled
Both tables use 'namespace_id' as primary key
Diffstat (limited to 'db')
-rw-r--r-- | db/migrate/20190531153110_create_namespace_root_storage_statistics.rb | 22 | ||||
-rw-r--r-- | db/migrate/20190605184422_create_namespace_aggregation_schedules.rb | 14 | ||||
-rw-r--r-- | db/schema.rb | 17 |
3 files changed, 53 insertions, 0 deletions
diff --git a/db/migrate/20190531153110_create_namespace_root_storage_statistics.rb b/db/migrate/20190531153110_create_namespace_root_storage_statistics.rb new file mode 100644 index 00000000000..702560d05cc --- /dev/null +++ b/db/migrate/20190531153110_create_namespace_root_storage_statistics.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +class CreateNamespaceRootStorageStatistics < ActiveRecord::Migration[5.1] + DOWNTIME = false + + def change + create_table :namespace_root_storage_statistics, id: false, primary_key: :namespace_id do |t| + t.integer :namespace_id, null: false, primary_key: true + t.datetime_with_timezone :updated_at, null: false + + t.bigint :repository_size, null: false, default: 0 + t.bigint :lfs_objects_size, null: false, default: 0 + t.bigint :wiki_size, null: false, default: 0 + t.bigint :build_artifacts_size, null: false, default: 0 + t.bigint :storage_size, null: false, default: 0 + t.bigint :packages_size, null: false, default: 0 + + t.index :namespace_id, unique: true + t.foreign_key :namespaces, column: :namespace_id, on_delete: :cascade + end + end +end diff --git a/db/migrate/20190605184422_create_namespace_aggregation_schedules.rb b/db/migrate/20190605184422_create_namespace_aggregation_schedules.rb new file mode 100644 index 00000000000..5e8cb616cc1 --- /dev/null +++ b/db/migrate/20190605184422_create_namespace_aggregation_schedules.rb @@ -0,0 +1,14 @@ +# frozen_string_literal: true + +class CreateNamespaceAggregationSchedules < ActiveRecord::Migration[5.1] + DOWNTIME = false + + def change + create_table :namespace_aggregation_schedules, id: false, primary_key: :namespace_id do |t| + t.integer :namespace_id, null: false, primary_key: true + + t.index :namespace_id, unique: true + t.foreign_key :namespaces, column: :namespace_id, on_delete: :cascade + end + end +end diff --git a/db/schema.rb b/db/schema.rb index a94e5142627..192ec8007d9 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -2055,6 +2055,21 @@ ActiveRecord::Schema.define(version: 20190620112608) do t.index ["title"], name: "index_milestones_on_title_trigram", using: :gin, opclasses: {"title"=>"gin_trgm_ops"} end + create_table "namespace_aggregation_schedules", primary_key: "namespace_id", id: :integer, default: nil, force: :cascade do |t| + t.index ["namespace_id"], name: "index_namespace_aggregation_schedules_on_namespace_id", unique: true, using: :btree + end + + create_table "namespace_root_storage_statistics", primary_key: "namespace_id", id: :integer, default: nil, force: :cascade do |t| + t.datetime_with_timezone "updated_at", null: false + t.bigint "repository_size", default: 0, null: false + t.bigint "lfs_objects_size", default: 0, null: false + t.bigint "wiki_size", default: 0, null: false + t.bigint "build_artifacts_size", default: 0, null: false + t.bigint "storage_size", default: 0, null: false + t.bigint "packages_size", default: 0, null: false + t.index ["namespace_id"], name: "index_namespace_root_storage_statistics_on_namespace_id", unique: true, using: :btree + end + create_table "namespace_statistics", id: :serial, force: :cascade do |t| t.integer "namespace_id", null: false t.integer "shared_runners_seconds", default: 0, null: false @@ -3757,6 +3772,8 @@ ActiveRecord::Schema.define(version: 20190620112608) do add_foreign_key "merge_trains", "users", on_delete: :cascade add_foreign_key "milestones", "namespaces", column: "group_id", name: "fk_95650a40d4", on_delete: :cascade add_foreign_key "milestones", "projects", name: "fk_9bd0a0c791", on_delete: :cascade + add_foreign_key "namespace_aggregation_schedules", "namespaces", on_delete: :cascade + add_foreign_key "namespace_root_storage_statistics", "namespaces", on_delete: :cascade add_foreign_key "namespace_statistics", "namespaces", on_delete: :cascade add_foreign_key "namespaces", "namespaces", column: "custom_project_templates_group_id", name: "fk_e7a0b20a6b", on_delete: :nullify add_foreign_key "namespaces", "plans", name: "fk_fdd12e5b80", on_delete: :nullify |