ash_hq/priv/repo/migrations/20230201153040_migrate_resources46.exs
2023-02-01 21:21:50 -05:00

235 lines
5.2 KiB
Elixir

defmodule AshHq.Repo.Migrations.MigrateResources46 do
@moduledoc """
Updates resources based on their most recent snapshots.
This file was autogenerated with `mix ash_postgres.generate_migrations`
"""
use Ecto.Migration
def up do
execute("""
ALTER TABLE discord_messages
DROP COLUMN searchable
""")
execute("""
ALTER TABLE dsls
DROP COLUMN searchable
""")
execute("""
ALTER TABLE extensions
DROP COLUMN searchable
""")
execute("""
ALTER TABLE functions
DROP COLUMN searchable
""")
execute("""
ALTER TABLE guides
DROP COLUMN searchable
""")
execute("""
ALTER TABLE mix_tasks
DROP COLUMN searchable
""")
execute("""
ALTER TABLE modules
DROP COLUMN searchable
""")
execute("""
ALTER TABLE options
DROP COLUMN searchable
""")
execute("""
ALTER TABLE discord_messages
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', content), 'D')
) STORED;
""")
execute("""
ALTER TABLE dsls
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'D')
) STORED;
""")
execute("""
ALTER TABLE extensions
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'D')
) STORED;
""")
execute("""
ALTER TABLE functions
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'D')
) STORED;
""")
execute("""
ALTER TABLE guides
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', text), 'D')
) STORED;
""")
execute("""
ALTER TABLE mix_tasks
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'D')
) STORED;
""")
execute("""
ALTER TABLE modules
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'D')
) STORED;
""")
execute("""
ALTER TABLE options
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'D')
) STORED;
""")
end
def down do
execute("""
ALTER TABLE options
DROP COLUMN searchable
""")
execute("""
ALTER TABLE modules
DROP COLUMN searchable
""")
execute("""
ALTER TABLE mix_tasks
DROP COLUMN searchable
""")
execute("""
ALTER TABLE guides
DROP COLUMN searchable
""")
execute("""
ALTER TABLE functions
DROP COLUMN searchable
""")
execute("""
ALTER TABLE extensions
DROP COLUMN searchable
""")
execute("""
ALTER TABLE dsls
DROP COLUMN searchable
""")
execute("""
ALTER TABLE discord_messages
DROP COLUMN searchable
""")
execute("""
ALTER TABLE options
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'B')
) STORED;
""")
execute("""
ALTER TABLE modules
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'B')
) STORED;
""")
execute("""
ALTER TABLE mix_tasks
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'B')
) STORED;
""")
execute("""
ALTER TABLE guides
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', text), 'B')
) STORED;
""")
execute("""
ALTER TABLE functions
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'B')
) STORED;
""")
execute("""
ALTER TABLE extensions
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'B')
) STORED;
""")
execute("""
ALTER TABLE dsls
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', name), 'A') ||
setweight(to_tsvector('english', doc), 'B')
) STORED;
""")
execute("""
ALTER TABLE discord_messages
ADD COLUMN searchable tsvector
GENERATED ALWAYS AS (
setweight(to_tsvector('english', content), 'A')
) STORED;
""")
end
end