summaryrefslogtreecommitdiff
path: root/db/migrate/20220401113123_add_check_constraint_to_vsa_aggregation_runtime_data_columns.rb
blob: 4863a1f00304d9a5308c308c30ae5d5c0865d77e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# frozen_string_literal: true

class AddCheckConstraintToVsaAggregationRuntimeDataColumns < Gitlab::Database::Migration[1.0]
  FULL_RUNTIMES_IN_SECONDS_CONSTRAINT = 'full_runtimes_in_seconds_size'
  FULL_PROCESSED_RECORDS_CONSTRAINT = 'full_processed_records_size'

  disable_ddl_transaction!

  def up
    add_check_constraint(:analytics_cycle_analytics_aggregations,
                         'CARDINALITY(full_runtimes_in_seconds) <= 10',
                         FULL_RUNTIMES_IN_SECONDS_CONSTRAINT)

    add_check_constraint(:analytics_cycle_analytics_aggregations,
                         'CARDINALITY(full_processed_records) <= 10',
                         FULL_PROCESSED_RECORDS_CONSTRAINT)
  end

  def down
    remove_check_constraint :analytics_cycle_analytics_aggregations, FULL_RUNTIMES_IN_SECONDS_CONSTRAINT
    remove_check_constraint :analytics_cycle_analytics_aggregations, FULL_PROCESSED_RECORDS_CONSTRAINT
  end
end