summaryrefslogtreecommitdiff
path: root/db/migrate/20161201155511_create_project_statistics.rb
blob: 26e6d3623eb1317526fc2a5ae504010e411ba81a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class CreateProjectStatistics < ActiveRecord::Migration
  include Gitlab::Database::MigrationHelpers

  DOWNTIME = false

  def change
    # use bigint columns to support values >2GB
    counter_column = { limit: 8, null: false, default: 0 }

    create_table :project_statistics do |t|
      t.references :project, null: false, index: { unique: true }, foreign_key: { on_delete: :cascade }
      t.references :namespace, null: false, index: true
      t.integer :commit_count, counter_column
      t.integer :storage_size, counter_column
      t.integer :repository_size, counter_column
      t.integer :lfs_objects_size, counter_column
      t.integer :build_artifacts_size, counter_column
    end
  end
end