1234567891011121314151617181920 |
- # frozen_string_literal: true
- class UpdateFollowRecommendationsToVersion2 < ActiveRecord::Migration[6.1]
- # We're switching from a normal to a materialized view so we need
- # custom `up` and `down` paths.
- def up
- drop_view :follow_recommendations
- create_view :follow_recommendations, version: 2, materialized: { no_data: true }
- # To be able to refresh the view concurrently,
- # at least one unique index is required
- safety_assured { add_index :follow_recommendations, :account_id, unique: true }
- end
- def down
- drop_view :follow_recommendations, materialized: true
- create_view :follow_recommendations, version: 1
- end
- end
|