diff options
Diffstat (limited to 'priv')
9 files changed, 115 insertions, 1 deletions
| diff --git a/priv/repo/migrations/20190711042021_create_safe_jsonb_set.exs b/priv/repo/migrations/20190711042021_create_safe_jsonb_set.exs index 43d616705..bfac09f9e 100644 --- a/priv/repo/migrations/20190711042021_create_safe_jsonb_set.exs +++ b/priv/repo/migrations/20190711042021_create_safe_jsonb_set.exs @@ -9,7 +9,7 @@ defmodule Pleroma.Repo.Migrations.CreateSafeJsonbSet do      begin        result := jsonb_set(target, path, coalesce(new_value, 'null'::jsonb), create_missing);        if result is NULL then -        raise 'jsonb_set tried to wipe the object, please report this incindent to Pleroma bug tracker. https://git.pleroma.social/pleroma/pleroma/issues/new'; +        raise 'jsonb_set tried to wipe the object, please report this incident to Pleroma bug tracker. https://git.pleroma.social/pleroma/pleroma/issues/new';          return target;        else          return result; diff --git a/priv/repo/migrations/20201221202251_create_hashtags.exs b/priv/repo/migrations/20201221202251_create_hashtags.exs new file mode 100644 index 000000000..8d2e9ae66 --- /dev/null +++ b/priv/repo/migrations/20201221202251_create_hashtags.exs @@ -0,0 +1,13 @@ +defmodule Pleroma.Repo.Migrations.CreateHashtags do +  use Ecto.Migration + +  def change do +    create_if_not_exists table(:hashtags) do +      add(:name, :citext, null: false) + +      timestamps() +    end + +    create_if_not_exists(unique_index(:hashtags, [:name])) +  end +end diff --git a/priv/repo/migrations/20201221202252_remove_data_from_hashtags.exs b/priv/repo/migrations/20201221202252_remove_data_from_hashtags.exs new file mode 100644 index 000000000..0442c3b87 --- /dev/null +++ b/priv/repo/migrations/20201221202252_remove_data_from_hashtags.exs @@ -0,0 +1,15 @@ +defmodule Pleroma.Repo.Migrations.RemoveDataFromHashtags do +  use Ecto.Migration + +  def up do +    alter table(:hashtags) do +      remove_if_exists(:data, :map) +    end +  end + +  def down do +    alter table(:hashtags) do +      add_if_not_exists(:data, :map, default: %{}) +    end +  end +end diff --git a/priv/repo/migrations/20201221203824_create_hashtags_objects.exs b/priv/repo/migrations/20201221203824_create_hashtags_objects.exs new file mode 100644 index 000000000..581f32b3c --- /dev/null +++ b/priv/repo/migrations/20201221203824_create_hashtags_objects.exs @@ -0,0 +1,13 @@ +defmodule Pleroma.Repo.Migrations.CreateHashtagsObjects do +  use Ecto.Migration + +  def change do +    create_if_not_exists table(:hashtags_objects, primary_key: false) do +      add(:hashtag_id, references(:hashtags), null: false, primary_key: true) +      add(:object_id, references(:objects), null: false, primary_key: true) +    end + +    # Note: PK index: "hashtags_objects_pkey" PRIMARY KEY, btree (hashtag_id, object_id) +    create_if_not_exists(index(:hashtags_objects, [:object_id])) +  end +end diff --git a/priv/repo/migrations/20210105195018_create_data_migrations.exs b/priv/repo/migrations/20210105195018_create_data_migrations.exs new file mode 100644 index 000000000..5f2e8d96c --- /dev/null +++ b/priv/repo/migrations/20210105195018_create_data_migrations.exs @@ -0,0 +1,17 @@ +defmodule Pleroma.Repo.Migrations.CreateDataMigrations do +  use Ecto.Migration + +  def change do +    create_if_not_exists table(:data_migrations) do +      add(:name, :string, null: false) +      add(:state, :integer, default: 1) +      add(:feature_lock, :boolean, default: false) +      add(:params, :map, default: %{}) +      add(:data, :map, default: %{}) + +      timestamps() +    end + +    create_if_not_exists(unique_index(:data_migrations, [:name])) +  end +end diff --git a/priv/repo/migrations/20210106183301_data_migration_create_populate_hashtags_table.exs b/priv/repo/migrations/20210106183301_data_migration_create_populate_hashtags_table.exs new file mode 100644 index 000000000..cf3cf26a0 --- /dev/null +++ b/priv/repo/migrations/20210106183301_data_migration_create_populate_hashtags_table.exs @@ -0,0 +1,16 @@ +defmodule Pleroma.Repo.Migrations.DataMigrationCreatePopulateHashtagsTable do +  use Ecto.Migration + +  def up do +    dt = NaiveDateTime.utc_now() + +    execute( +      "INSERT INTO data_migrations(name, inserted_at, updated_at) " <> +        "VALUES ('populate_hashtags_table', '#{dt}', '#{dt}') ON CONFLICT DO NOTHING;" +    ) +  end + +  def down do +    execute("DELETE FROM data_migrations WHERE name = 'populate_hashtags_table';") +  end +end diff --git a/priv/repo/migrations/20210111172254_create_data_migration_failed_ids.exs b/priv/repo/migrations/20210111172254_create_data_migration_failed_ids.exs new file mode 100644 index 000000000..18afa74ac --- /dev/null +++ b/priv/repo/migrations/20210111172254_create_data_migration_failed_ids.exs @@ -0,0 +1,14 @@ +defmodule Pleroma.Repo.Migrations.CreateDataMigrationFailedIds do +  use Ecto.Migration + +  def change do +    create_if_not_exists table(:data_migration_failed_ids, primary_key: false) do +      add(:data_migration_id, references(:data_migrations), null: false, primary_key: true) +      add(:record_id, :bigint, null: false, primary_key: true) +    end + +    create_if_not_exists( +      unique_index(:data_migration_failed_ids, [:data_migration_id, :record_id]) +    ) +  end +end diff --git a/priv/repo/migrations/20210222183840_remove_hashtags_objects_duplicate_index.exs b/priv/repo/migrations/20210222183840_remove_hashtags_objects_duplicate_index.exs new file mode 100644 index 000000000..6c4a2dfdc --- /dev/null +++ b/priv/repo/migrations/20210222183840_remove_hashtags_objects_duplicate_index.exs @@ -0,0 +1,11 @@ +defmodule Pleroma.Repo.Migrations.RemoveHashtagsObjectsDuplicateIndex do +  use Ecto.Migration + +  @moduledoc "Removes `hashtags_objects_hashtag_id_object_id_index` index (duplicate of PK index)." + +  def up do +    drop_if_exists(unique_index(:hashtags_objects, [:hashtag_id, :object_id])) +  end + +  def down, do: nil +end diff --git a/priv/repo/migrations/20210222184616_change_hashtags_name_to_text.exs b/priv/repo/migrations/20210222184616_change_hashtags_name_to_text.exs new file mode 100644 index 000000000..8940b6ca3 --- /dev/null +++ b/priv/repo/migrations/20210222184616_change_hashtags_name_to_text.exs @@ -0,0 +1,15 @@ +defmodule Pleroma.Repo.Migrations.ChangeHashtagsNameToText do +  use Ecto.Migration + +  def up do +    alter table(:hashtags) do +      modify(:name, :text) +    end +  end + +  def down do +    alter table(:hashtags) do +      modify(:name, :citext) +    end +  end +end | 
