Browse Source

[#1033] Fix database migrations

tags/v1.1.4
Maksim feld 5 years ago
parent
commit
85c7916c94
70 changed files with 151 additions and 103 deletions
  1. +1
    -1
      priv/repo/migrations/20170320193800_create_user.exs
  2. +2
    -2
      priv/repo/migrations/20170321074828_create_activity.exs
  3. +1
    -1
      priv/repo/migrations/20170321074832_create_object.exs
  4. +1
    -1
      priv/repo/migrations/20170330153447_add_index_to_objects.exs
  5. +2
    -2
      priv/repo/migrations/20170415141210_add_unique_index_to_email_and_nickname.exs
  6. +1
    -1
      priv/repo/migrations/20170418200143_create_webssub_server_subscription.exs
  7. +1
    -1
      priv/repo/migrations/20170426154155_create_websub_client_subscription.exs
  8. +5
    -3
      priv/repo/migrations/20170501133231_add_id_contraints_to_activities_and_objects_part_two.exs
  9. +1
    -1
      priv/repo/migrations/20170502083023_add_local_field_to_activities.exs
  10. +1
    -1
      priv/repo/migrations/20170506222027_add_unique_index_to_apid.exs
  11. +8
    -1
      priv/repo/migrations/20170529093232_longer_bios.exs
  12. +1
    -1
      priv/repo/migrations/20170620095947_remove_activities_index.exs
  13. +1
    -1
      priv/repo/migrations/20170620133028_add_object_activity_index.exs
  14. +1
    -1
      priv/repo/migrations/20170620142420_add_object_activity_index_part_two.exs
  15. +1
    -1
      priv/repo/migrations/20170701142005_add_actor_index_to_activity.exs
  16. +1
    -1
      priv/repo/migrations/20170906120646_add_mastodon_apps.exs
  17. +1
    -1
      priv/repo/migrations/20170906143140_create_o_auth_authorizations.exs
  18. +1
    -1
      priv/repo/migrations/20170906152508_create_o_auth_token.exs
  19. +2
    -2
      priv/repo/migrations/20170911123607_create_notifications.exs
  20. +1
    -1
      priv/repo/migrations/20171019141706_create_password_reset_tokens.exs
  21. +1
    -1
      priv/repo/migrations/20171109091239_add_actor_to_activity.exs
  22. +1
    -1
      priv/repo/migrations/20171130135819_add_local_index_to_user.exs
  23. +1
    -1
      priv/repo/migrations/20171212163643_add_recipients_to_activities.exs
  24. +2
    -0
      priv/repo/migrations/20171212164525_fill_recipients_in_activities.exs
  25. +3
    -1
      priv/repo/migrations/20180221210540_make_following_postgres_array.exs
  26. +1
    -1
      priv/repo/migrations/20180327174350_drop_local_index_on_activities.exs
  27. +1
    -1
      priv/repo/migrations/20180327175831_actually_drop_local_index.exs
  28. +2
    -2
      priv/repo/migrations/20180429094642_create_lists.exs
  29. +1
    -1
      priv/repo/migrations/20180516154905_create_user_trigram_index.exs
  30. +1
    -1
      priv/repo/migrations/20180530123448_add_list_follow_index.exs
  31. +1
    -1
      priv/repo/migrations/20180612110515_create_user_invite_tokens.exs
  32. +3
    -3
      priv/repo/migrations/20180813003722_create_filters.exs
  33. +2
    -2
      priv/repo/migrations/20180829082446_add_recipients_to_and_cc_fields_to_activities.exs
  34. +2
    -2
      priv/repo/migrations/20180829182612_activities_add_to_cc_indices.exs
  35. +8
    -1
      priv/repo/migrations/20180829183529_remove_recipients_to_and_cc_fields_from_activities.exs
  36. +1
    -1
      priv/repo/migrations/20180903114437_users_add_is_moderator_index.exs
  37. +2
    -2
      priv/repo/migrations/20180918182427_create_push_subscriptions.exs
  38. +3
    -1
      priv/repo/migrations/20181201104428_add_uuid_extension.exs
  39. +3
    -1
      priv/repo/migrations/20181201105617_add_uui_ds_to_user_info.exs
  40. +1
    -1
      priv/repo/migrations/20181206125616_add_tags_to_users.exs
  41. +3
    -1
      priv/repo/migrations/20181218172826_users_and_activities_flake_id.exs
  42. +2
    -2
      priv/repo/migrations/20190109152453_add_visibility_function.exs
  43. +1
    -1
      priv/repo/migrations/20190115085500_create_user_fts_index.exs
  44. +2
    -2
      priv/repo/migrations/20190118074940_fix_user_trigram_index.exs
  45. +1
    -1
      priv/repo/migrations/20190123092341_users_add_is_admin_index.exs
  46. +3
    -3
      priv/repo/migrations/20190123125546_create_instances.exs
  47. +3
    -1
      priv/repo/migrations/20190123125839_fix_info_ids.exs
  48. +7
    -1
      priv/repo/migrations/20190126160540_change_push_subscriptions_varchar.exs
  49. +1
    -1
      priv/repo/migrations/20190204200237_add_correct_dm_index.exs
  50. +2
    -2
      priv/repo/migrations/20190205114625_create_thread_mutes.exs
  51. +3
    -3
      priv/repo/migrations/20190315101315_create_registrations.exs
  52. +1
    -1
      priv/repo/migrations/20190325185009_create_notification_id_index.exs
  53. +3
    -3
      priv/repo/migrations/20190328053912_create_scheduled_activities.exs
  54. +3
    -3
      priv/repo/migrations/20190403131720_add_oauth_token_indexes.exs
  55. +1
    -1
      priv/repo/migrations/20190405160700_add_index_on_subscribers.exs
  56. +5
    -5
      priv/repo/migrations/20190408123347_create_conversations.exs
  57. +1
    -1
      priv/repo/migrations/20190410152859_add_participation_updated_at_index.exs
  58. +1
    -1
      priv/repo/migrations/20190411094120_add_index_on_user_info_deactivated.exs
  59. +2
    -2
      priv/repo/migrations/20190413082658_create_bookmarks.exs
  60. +8
    -2
      priv/repo/migrations/20190414125034_migrate_old_bookmarks.exs
  61. +1
    -1
      priv/repo/migrations/20190501125843_add_fts_index_to_objects.exs
  62. +1
    -1
      priv/repo/migrations/20190501133552_add_refresh_token_index_to_token.exs
  63. +7
    -1
      priv/repo/migrations/20190513175809_change_hide_column_in_filter_table.exs
  64. +1
    -1
      priv/repo/migrations/20190515222404_add_thread_visibility_function.exs
  65. +2
    -2
      priv/repo/migrations/20190518032627_create_config.exs
  66. +3
    -1
      priv/repo/migrations/20190525071417_add_non_follows_and_non_followers_fields_to_notification_settings.exs
  67. +1
    -1
      priv/repo/migrations/20190603115238_add_index_on_activities_local.exs
  68. +1
    -1
      priv/repo/migrations/20190603173419_add_tag_index_to_objects.exs
  69. +2
    -2
      priv/repo/migrations/20190622151019_add_group_key_to_config.exs
  70. +5
    -5
      priv/repo/optional_migrations/rum_indexing/20190510135645_add_fts_index_to_objects_two.exs

+ 1
- 1
priv/repo/migrations/20170320193800_create_user.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreatePleroma.User do
use Ecto.Migration

def change do
create table(:users) do
create_if_not_exists table(:users) do
add :email, :string
add :password_hash, :string
add :name, :string


+ 2
- 2
priv/repo/migrations/20170321074828_create_activity.exs View File

@@ -2,13 +2,13 @@ defmodule Pleroma.Repo.Migrations.CreatePleroma.Activity do
use Ecto.Migration

def change do
create table(:activities) do
create_if_not_exists table(:activities) do
add :data, :map

timestamps()
end

create index(:activities, [:data], using: :gin)
create_if_not_exists index(:activities, [:data], using: :gin)

end
end

+ 1
- 1
priv/repo/migrations/20170321074832_create_object.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreatePleroma.Object do
use Ecto.Migration

def change do
create table(:objects) do
create_if_not_exists table(:objects) do
add :data, :map

timestamps()


+ 1
- 1
priv/repo/migrations/20170330153447_add_index_to_objects.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddIndexToObjects do
use Ecto.Migration

def change do
create index(:objects, [:data], using: :gin)
create_if_not_exists index(:objects, [:data], using: :gin)
end
end

+ 2
- 2
priv/repo/migrations/20170415141210_add_unique_index_to_email_and_nickname.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.AddUniqueIndexToEmailAndNickname do
use Ecto.Migration

def change do
create unique_index(:users, [:email])
create unique_index(:users, [:nickname])
create_if_not_exists unique_index(:users, [:email])
create_if_not_exists unique_index(:users, [:nickname])
end
end

+ 1
- 1
priv/repo/migrations/20170418200143_create_webssub_server_subscription.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateWebsubServerSubscription do
use Ecto.Migration

def change do
create table(:websub_server_subscriptions) do
create_if_not_exists table(:websub_server_subscriptions) do
add :topic, :string
add :callback, :string
add :secret, :string


+ 1
- 1
priv/repo/migrations/20170426154155_create_websub_client_subscription.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateWebsubClientSubscription do
use Ecto.Migration

def change do
create table(:websub_client_subscriptions) do
create_if_not_exists table(:websub_client_subscriptions) do
add :topic, :string
add :secret, :string
add :valid_until, :naive_datetime_usec


+ 5
- 3
priv/repo/migrations/20170501133231_add_id_contraints_to_activities_and_objects_part_two.exs View File

@@ -1,10 +1,12 @@
defmodule Pleroma.Repo.Migrations.AddIdContraintsToActivitiesAndObjectsPartTwo do
use Ecto.Migration

def change do
def up do
drop_if_exists index(:objects, ["(data->>\"id\")"], name: :objects_unique_apid_index)
drop_if_exists index(:activities, ["(data->>\"id\")"], name: :activities_unique_apid_index)
create unique_index(:objects, ["(data->>'id')"], name: :objects_unique_apid_index)
create unique_index(:activities, ["(data->>'id')"], name: :activities_unique_apid_index)
create_if_not_exists unique_index(:objects, ["(data->>'id')"], name: :objects_unique_apid_index)
create_if_not_exists unique_index(:activities, ["(data->>'id')"], name: :activities_unique_apid_index)
end

def down, do: :ok
end

+ 1
- 1
priv/repo/migrations/20170502083023_add_local_field_to_activities.exs View File

@@ -6,6 +6,6 @@ defmodule Pleroma.Repo.Migrations.AddLocalFieldToActivities do
add :local, :boolean, default: true
end

create index(:activities, [:local])
create_if_not_exists index(:activities, [:local])
end
end

+ 1
- 1
priv/repo/migrations/20170506222027_add_unique_index_to_apid.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddUniqueIndexToAPID do
use Ecto.Migration

def change do
create unique_index(:users, [:ap_id])
create_if_not_exists unique_index(:users, [:ap_id])
end
end

+ 8
- 1
priv/repo/migrations/20170529093232_longer_bios.exs View File

@@ -1,9 +1,16 @@
defmodule Pleroma.Repo.Migrations.LongerBios do
use Ecto.Migration

def change do
def up do
alter table(:users) do
modify :bio, :text
end
end

def down do
alter table(:users) do
modify :bio, :string
end
end

end

+ 1
- 1
priv/repo/migrations/20170620095947_remove_activities_index.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.RemoveActivitiesIndex do
use Ecto.Migration

def change do
drop index(:activities, [:data])
drop_if_exists index(:activities, [:data])
end
end

+ 1
- 1
priv/repo/migrations/20170620133028_add_object_activity_index.exs View File

@@ -3,6 +3,6 @@ defmodule Pleroma.Repo.Migrations.AddObjectActivityIndex do

def change do
# This was wrong, now a noop
# create index(:objects, ["(data->'object'->>'id')", "(data->>'type')"], name: :activities_create_objects_index)
# create_if_not_exists index(:objects, ["(data->'object'->>'id')", "(data->>'type')"], name: :activities_create_objects_index)
end
end

+ 1
- 1
priv/repo/migrations/20170620142420_add_object_activity_index_part_two.exs View File

@@ -3,6 +3,6 @@ defmodule Pleroma.Repo.Migrations.AddObjectActivityIndexPartTwo do

def change do
drop_if_exists index(:objects, ["(data->'object'->>'id')", "(data->>'type')"], name: :activities_create_objects_index)
create index(:activities, ["(data->'object'->>'id')", "(data->>'type')"], name: :activities_create_objects_index)
create_if_not_exists index(:activities, ["(data->'object'->>'id')", "(data->>'type')"], name: :activities_create_objects_index)
end
end

+ 1
- 1
priv/repo/migrations/20170701142005_add_actor_index_to_activity.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddActorIndexToActivity do
use Ecto.Migration

def change do
create index(:activities, ["(data->>'actor')", "inserted_at desc"], name: :activities_actor_index)
create_if_not_exists index(:activities, ["(data->>'actor')", "inserted_at desc"], name: :activities_actor_index)
end
end

+ 1
- 1
priv/repo/migrations/20170906120646_add_mastodon_apps.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.AddMastodonApps do
use Ecto.Migration

def change do
create table(:apps) do
create_if_not_exists table(:apps) do
add :client_name, :string
add :redirect_uris, :string
add :scopes, :string


+ 1
- 1
priv/repo/migrations/20170906143140_create_o_auth_authorizations.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateOAuthAuthorizations do
use Ecto.Migration

def change do
create table(:oauth_authorizations) do
create_if_not_exists table(:oauth_authorizations) do
add :app_id, references(:apps)
add :user_id, references(:users)
add :token, :string


+ 1
- 1
priv/repo/migrations/20170906152508_create_o_auth_token.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateOAuthToken do
use Ecto.Migration

def change do
create table(:oauth_tokens) do
create_if_not_exists table(:oauth_tokens) do
add :app_id, references(:apps)
add :user_id, references(:users)
add :token, :string


+ 2
- 2
priv/repo/migrations/20170911123607_create_notifications.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateNotifications do
use Ecto.Migration

def change do
create table(:notifications) do
create_if_not_exists table(:notifications) do
add :user_id, references(:users, on_delete: :delete_all)
add :activity_id, references(:activities, on_delete: :delete_all)
add :seen, :boolean, default: false
@@ -10,6 +10,6 @@ defmodule Pleroma.Repo.Migrations.CreateNotifications do
timestamps()
end

create index(:notifications, [:user_id])
create_if_not_exists index(:notifications, [:user_id])
end
end

+ 1
- 1
priv/repo/migrations/20171019141706_create_password_reset_tokens.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreatePasswordResetTokens do
use Ecto.Migration

def change do
create table(:password_reset_tokens) do
create_if_not_exists table(:password_reset_tokens) do
add :token, :string
add :user_id, references(:users)
add :used, :boolean, default: false


+ 1
- 1
priv/repo/migrations/20171109091239_add_actor_to_activity.exs View File

@@ -12,7 +12,7 @@ defmodule Pleroma.Repo.Migrations.AddActorToActivity do
end

def down do
drop index(:activities, [:actor, "id DESC NULLS LAST"])
drop_if_exists index(:activities, [:actor, "id DESC NULLS LAST"])
alter table(:activities) do
remove :actor
end


+ 1
- 1
priv/repo/migrations/20171130135819_add_local_index_to_user.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddLocalIndexToUser do
use Ecto.Migration

def change do
create index(:users, [:local])
create_if_not_exists index(:users, [:local])
end
end

+ 1
- 1
priv/repo/migrations/20171212163643_add_recipients_to_activities.exs View File

@@ -6,6 +6,6 @@ defmodule Pleroma.Repo.Migrations.AddRecipientsToActivities do
add :recipients, {:array, :string}
end

create index(:activities, [:recipients], using: :gin)
create_if_not_exists index(:activities, [:recipients], using: :gin)
end
end

+ 2
- 0
priv/repo/migrations/20171212164525_fill_recipients_in_activities.exs View File

@@ -18,4 +18,6 @@ defmodule Pleroma.Repo.Migrations.FillRecipientsInActivities do
end)
end
end

def down, do: :ok
end

+ 3
- 1
priv/repo/migrations/20180221210540_make_following_postgres_array.exs View File

@@ -1,7 +1,7 @@
defmodule Pleroma.Repo.Migrations.MakeFollowingPostgresArray do
use Ecto.Migration

def change do
def up do
alter table(:users) do
add :following_temp, {:array, :string}
end
@@ -15,4 +15,6 @@ defmodule Pleroma.Repo.Migrations.MakeFollowingPostgresArray do
end
rename table(:users), :following_temp, to: :following
end

def down, do: :ok
end

+ 1
- 1
priv/repo/migrations/20180327174350_drop_local_index_on_activities.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.DropLocalIndexOnActivities do
use Ecto.Migration

def change do
drop index(:users, [:local])
drop_if_exists index(:users, [:local])
end
end

+ 1
- 1
priv/repo/migrations/20180327175831_actually_drop_local_index.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.ActuallyDropLocalIndex do
use Ecto.Migration

def change do
create index(:users, [:local])
create_if_not_exists index(:users, [:local])
drop_if_exists index("activities", :local)
end
end

+ 2
- 2
priv/repo/migrations/20180429094642_create_lists.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateLists do
use Ecto.Migration

def change do
create table(:lists) do
create_if_not_exists table(:lists) do
add :user_id, references(:users, on_delete: :delete_all)
add :title, :string
add :following, {:array, :string}
@@ -10,6 +10,6 @@ defmodule Pleroma.Repo.Migrations.CreateLists do
timestamps()
end

create index(:lists, [:user_id])
create_if_not_exists index(:lists, [:user_id])
end
end

+ 1
- 1
priv/repo/migrations/20180516154905_create_user_trigram_index.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.CreateUserTrigramIndex do
use Ecto.Migration

def change do
create index(:users, ["(nickname || name) gist_trgm_ops"], name: :users_trigram_index, using: :gist)
create_if_not_exists index(:users, ["(nickname || name) gist_trgm_ops"], name: :users_trigram_index, using: :gist)
end
end

+ 1
- 1
priv/repo/migrations/20180530123448_add_list_follow_index.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddListFollowIndex do
use Ecto.Migration

def change do
create index(:lists, [:following])
create_if_not_exists index(:lists, [:following])
end
end

+ 1
- 1
priv/repo/migrations/20180612110515_create_user_invite_tokens.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateUserInviteTokens do
use Ecto.Migration

def change do
create table(:user_invite_tokens) do
create_if_not_exists table(:user_invite_tokens) do
add :token, :string
add :used, :boolean, default: false



+ 3
- 3
priv/repo/migrations/20180813003722_create_filters.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateFilters do
use Ecto.Migration

def change do
create table(:filters) do
create_if_not_exists table(:filters) do
add :user_id, references(:users, on_delete: :delete_all)
add :filter_id, :integer
add :hide, :boolean
@@ -14,7 +14,7 @@ defmodule Pleroma.Repo.Migrations.CreateFilters do
timestamps()
end

create index(:filters, [:user_id])
create index(:filters, [:phrase], where: "hide = true", name: :hided_phrases_index)
create_if_not_exists index(:filters, [:user_id])
create_if_not_exists index(:filters, [:phrase], where: "hide = true", name: :hided_phrases_index)
end
end

+ 2
- 2
priv/repo/migrations/20180829082446_add_recipients_to_and_cc_fields_to_activities.exs View File

@@ -7,7 +7,7 @@ defmodule Pleroma.Repo.Migrations.AddRecipientsToAndCcFieldsToActivities do
add :recipients_cc, {:array, :string}
end

create index(:activities, [:recipients_to], using: :gin)
create index(:activities, [:recipients_cc], using: :gin)
create_if_not_exists index(:activities, [:recipients_to], using: :gin)
create_if_not_exists index(:activities, [:recipients_cc], using: :gin)
end
end

+ 2
- 2
priv/repo/migrations/20180829182612_activities_add_to_cc_indices.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.ActivitiesAddToCcIndices do
use Ecto.Migration

def change do
create index(:activities, ["(data->'to')"], name: :activities_to_index, using: :gin)
create index(:activities, ["(data->'cc')"], name: :activities_cc_index, using: :gin)
create_if_not_exists index(:activities, ["(data->'to')"], name: :activities_to_index, using: :gin)
create_if_not_exists index(:activities, ["(data->'cc')"], name: :activities_cc_index, using: :gin)
end
end

+ 8
- 1
priv/repo/migrations/20180829183529_remove_recipients_to_and_cc_fields_from_activities.exs View File

@@ -1,10 +1,17 @@
defmodule Pleroma.Repo.Migrations.RemoveRecipientsToAndCcFieldsFromActivities do
use Ecto.Migration

def change do
def up do
alter table(:activities) do
remove :recipients_to
remove :recipients_cc
end
end

def down do
alter table(:activities) do
add :recipients_to, {:array, :string}
add :recipients_cc, {:array, :string}
end
end
end

+ 1
- 1
priv/repo/migrations/20180903114437_users_add_is_moderator_index.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.UsersAddIsModeratorIndex do
use Ecto.Migration

def change do
create index(:users, ["(info->'is_moderator')"], name: :users_is_moderator_index, using: :gin)
create_if_not_exists index(:users, ["(info->'is_moderator')"], name: :users_is_moderator_index, using: :gin)
end
end

+ 2
- 2
priv/repo/migrations/20180918182427_create_push_subscriptions.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreatePushSubscriptions do
use Ecto.Migration

def change do
create table("push_subscriptions") do
create_if_not_exists table("push_subscriptions") do
add :user_id, references("users", on_delete: :delete_all)
add :token_id, references("oauth_tokens", on_delete: :delete_all)
add :endpoint, :string
@@ -13,6 +13,6 @@ defmodule Pleroma.Repo.Migrations.CreatePushSubscriptions do
timestamps()
end

create index("push_subscriptions", [:user_id, :token_id], unique: true)
create_if_not_exists index("push_subscriptions", [:user_id, :token_id], unique: true)
end
end

+ 3
- 1
priv/repo/migrations/20181201104428_add_uuid_extension.exs View File

@@ -1,7 +1,9 @@
defmodule Pleroma.Repo.Migrations.AddUUIDExtension do
use Ecto.Migration

def change do
def up do
execute("create extension if not exists \"uuid-ossp\"")
end

def down, do: :ok
end

+ 3
- 1
priv/repo/migrations/20181201105617_add_uui_ds_to_user_info.exs View File

@@ -1,7 +1,9 @@
defmodule Pleroma.Repo.Migrations.AddUUIDsToUserInfo do
use Ecto.Migration

def change do
def up do
execute("update users set info = jsonb_set(info, '{\"id\"}', to_jsonb(uuid_generate_v4()))")
end

def down, do: :ok
end

+ 1
- 1
priv/repo/migrations/20181206125616_add_tags_to_users.exs View File

@@ -6,6 +6,6 @@ defmodule Pleroma.Repo.Migrations.AddTagsToUsers do
add :tags, {:array, :string}
end

create index(:users, [:tags], using: :gin)
create_if_not_exists index(:users, [:tags], using: :gin)
end
end

+ 3
- 1
priv/repo/migrations/20181218172826_users_and_activities_flake_id.exs View File

@@ -12,7 +12,7 @@ defmodule Pleroma.Repo.Migrations.UsersAndActivitiesFlakeId do
# 4- update relation pkeys with the new ids
# 5- rename the temporary column to id
# 6- re-create the constraints
def change do
def up do
# Old serial int ids are transformed to 128bits with extra padding.
# The application (in `Pleroma.FlakeId`) handles theses IDs properly as integers; to keep compatibility
# with previously issued ids.
@@ -75,6 +75,8 @@ defmodule Pleroma.Repo.Migrations.UsersAndActivitiesFlakeId do
stop_clippy_heartbeats(clippy)
end

def down, do: :ok

defp start_clippy_heartbeats() do
count = from(a in "activities", select: count(a.id)) |> Repo.one!



+ 2
- 2
priv/repo/migrations/20190109152453_add_visibility_function.exs View File

@@ -37,12 +37,12 @@ defmodule Pleroma.Repo.Migrations.AddVisibilityFunction do
end

def down do
drop(
drop_if_exists(
index(:activities, ["activity_visibility(actor, recipients, data)"],
name: :activities_visibility_index
)
)

execute("drop function activity_visibility(actor varchar, recipients varchar[], data jsonb)")
execute("drop function if exists activity_visibility(actor varchar, recipients varchar[], data jsonb)")
end
end

+ 1
- 1
priv/repo/migrations/20190115085500_create_user_fts_index.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateUserFtsIndex do
use Ecto.Migration

def change do
create index(
create_if_not_exists index(
:users,
[
"""


+ 2
- 2
priv/repo/migrations/20190118074940_fix_user_trigram_index.exs View File

@@ -4,7 +4,7 @@ defmodule Pleroma.Repo.Migrations.FixUserTrigramIndex do
def up do
drop_if_exists(index(:users, [], name: :users_trigram_index))

create(
create_if_not_exists(
index(:users, ["(trim(nickname || ' ' || coalesce(name, ''))) gist_trgm_ops"],
name: :users_trigram_index,
using: :gist
@@ -15,7 +15,7 @@ defmodule Pleroma.Repo.Migrations.FixUserTrigramIndex do
def down do
drop_if_exists(index(:users, [], name: :users_trigram_index))

create(
create_if_not_exists(
index(:users, ["(nickname || name) gist_trgm_ops"], name: :users_trigram_index, using: :gist)
)
end


+ 1
- 1
priv/repo/migrations/20190123092341_users_add_is_admin_index.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.UsersAddIsAdminIndex do
use Ecto.Migration

def change do
create(index(:users, ["(info->'is_admin')"], name: :users_is_admin_index, using: :gin))
create_if_not_exists(index(:users, ["(info->'is_admin')"], name: :users_is_admin_index, using: :gin))
end
end

+ 3
- 3
priv/repo/migrations/20190123125546_create_instances.exs View File

@@ -2,14 +2,14 @@ defmodule Pleroma.Repo.Migrations.CreateInstances do
use Ecto.Migration

def change do
create table(:instances) do
create_if_not_exists table(:instances) do
add :host, :string
add :unreachable_since, :naive_datetime_usec

timestamps()
end

create unique_index(:instances, [:host])
create index(:instances, [:unreachable_since])
create_if_not_exists unique_index(:instances, [:host])
create_if_not_exists index(:instances, [:unreachable_since])
end
end

+ 3
- 1
priv/repo/migrations/20190123125839_fix_info_ids.exs View File

@@ -1,9 +1,11 @@
defmodule Pleroma.Repo.Migrations.FixInfoIds do
use Ecto.Migration

def change do
def up do
execute(
"update users set info = jsonb_set(info, '{id}', to_jsonb(uuid_generate_v4())) where info->'id' is null;"
)
end

def down, do: :ok
end

+ 7
- 1
priv/repo/migrations/20190126160540_change_push_subscriptions_varchar.exs View File

@@ -1,9 +1,15 @@
defmodule Pleroma.Repo.Migrations.ChangePushSubscriptionsVarchar do
use Ecto.Migration

def change do
def up do
alter table(:push_subscriptions) do
modify(:endpoint, :varchar)
end
end

def down do
alter table(:push_subscriptions) do
modify(:endpoint, :string)
end
end
end

+ 1
- 1
priv/repo/migrations/20190204200237_add_correct_dm_index.exs View File

@@ -19,7 +19,7 @@ defmodule Pleroma.Repo.Migrations.AddCorrectDMIndex do
end

def down do
drop(
drop_if_exists(
index(:activities, ["activity_visibility(actor, recipients, data)", "id DESC"],
name: :activities_visibility_index,
concurrently: true,


+ 2
- 2
priv/repo/migrations/20190205114625_create_thread_mutes.exs View File

@@ -2,11 +2,11 @@ defmodule Pleroma.Repo.Migrations.CreateThreadMutes do
use Ecto.Migration

def change do
create table(:thread_mutes) do
create_if_not_exists table(:thread_mutes) do
add :user_id, references(:users, type: :uuid, on_delete: :delete_all)
add :context, :string
end
create unique_index(:thread_mutes, [:user_id, :context], name: :unique_index)
create_if_not_exists unique_index(:thread_mutes, [:user_id, :context], name: :unique_index)
end
end

+ 3
- 3
priv/repo/migrations/20190315101315_create_registrations.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateRegistrations do
use Ecto.Migration

def change do
create table(:registrations, primary_key: false) do
create_if_not_exists table(:registrations, primary_key: false) do
add :id, :uuid, primary_key: true
add :user_id, references(:users, type: :uuid, on_delete: :delete_all)
add :provider, :string
@@ -12,7 +12,7 @@ defmodule Pleroma.Repo.Migrations.CreateRegistrations do
timestamps()
end

create unique_index(:registrations, [:provider, :uid])
create unique_index(:registrations, [:user_id, :provider, :uid])
create_if_not_exists unique_index(:registrations, [:provider, :uid])
create_if_not_exists unique_index(:registrations, [:user_id, :provider, :uid])
end
end

+ 1
- 1
priv/repo/migrations/20190325185009_create_notification_id_index.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.CreateNotificationIdIndex do
use Ecto.Migration

def change do
create index(:notifications, ["id desc nulls last"])
create_if_not_exists index(:notifications, ["id desc nulls last"])
end
end

+ 3
- 3
priv/repo/migrations/20190328053912_create_scheduled_activities.exs View File

@@ -2,7 +2,7 @@ defmodule Pleroma.Repo.Migrations.CreateScheduledActivities do
use Ecto.Migration

def change do
create table(:scheduled_activities) do
create_if_not_exists table(:scheduled_activities) do
add(:user_id, references(:users, type: :uuid, on_delete: :delete_all))
add(:scheduled_at, :naive_datetime, null: false)
add(:params, :map, null: false)
@@ -10,7 +10,7 @@ defmodule Pleroma.Repo.Migrations.CreateScheduledActivities do
timestamps()
end

create(index(:scheduled_activities, [:scheduled_at]))
create(index(:scheduled_activities, [:user_id]))
create_if_not_exists(index(:scheduled_activities, [:scheduled_at]))
create_if_not_exists(index(:scheduled_activities, [:user_id]))
end
end

+ 3
- 3
priv/repo/migrations/20190403131720_add_oauth_token_indexes.exs View File

@@ -2,8 +2,8 @@ defmodule Pleroma.Repo.Migrations.AddOauthTokenIndexes do
use Ecto.Migration

def change do
create(unique_index(:oauth_tokens, [:token]))
create(index(:oauth_tokens, [:app_id]))
create(index(:oauth_tokens, [:user_id]))
create_if_not_exists(unique_index(:oauth_tokens, [:token]))
create_if_not_exists(index(:oauth_tokens, [:app_id]))
create_if_not_exists(index(:oauth_tokens, [:user_id]))
end
end

+ 1
- 1
priv/repo/migrations/20190405160700_add_index_on_subscribers.exs View File

@@ -1,6 +1,6 @@
defmodule Pleroma.Repo.Migrations.AddIndexOnSubscribers do
use Ecto.Migration
@disable_ddl_transaction true
def change do
create index(:users, ["(info->'subscribers')"], name: :users_subscribers_index, using: :gin, concurrently: true)


+ 5
- 5
priv/repo/migrations/20190408123347_create_conversations.exs View File

@@ -6,12 +6,12 @@ defmodule Pleroma.Repo.Migrations.CreateConversations do
use Ecto.Migration

def change do
create table(:conversations) do
create_if_not_exists table(:conversations) do
add(:ap_id, :string, null: false)
timestamps()
end

create table(:conversation_participations) do
create_if_not_exists table(:conversation_participations) do
add(:user_id, references(:users, type: :uuid, on_delete: :delete_all))
add(:conversation_id, references(:conversations, on_delete: :delete_all))
add(:read, :boolean, default: false)
@@ -19,8 +19,8 @@ defmodule Pleroma.Repo.Migrations.CreateConversations do
timestamps()
end

create index(:conversation_participations, [:conversation_id])
create unique_index(:conversation_participations, [:user_id, :conversation_id])
create unique_index(:conversations, [:ap_id])
create_if_not_exists index(:conversation_participations, [:conversation_id])
create_if_not_exists unique_index(:conversation_participations, [:user_id, :conversation_id])
create_if_not_exists unique_index(:conversations, [:ap_id])
end
end

+ 1
- 1
priv/repo/migrations/20190410152859_add_participation_updated_at_index.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddParticipationUpdatedAtIndex do
use Ecto.Migration

def change do
create index(:conversation_participations, ["updated_at desc"])
create_if_not_exists index(:conversation_participations, ["updated_at desc"])
end
end

+ 1
- 1
priv/repo/migrations/20190411094120_add_index_on_user_info_deactivated.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddIndexOnUserInfoDeactivated do
use Ecto.Migration

def change do
create(index(:users, ["(info->'deactivated')"], name: :users_deactivated_index, using: :gin))
create_if_not_exists(index(:users, ["(info->'deactivated')"], name: :users_deactivated_index, using: :gin))
end
end

+ 2
- 2
priv/repo/migrations/20190413082658_create_bookmarks.exs View File

@@ -2,13 +2,13 @@ defmodule Pleroma.Repo.Migrations.CreateBookmarks do
use Ecto.Migration

def change do
create table(:bookmarks) do
create_if_not_exists table(:bookmarks) do
add(:user_id, references(:users, type: :uuid, on_delete: :delete_all))
add(:activity_id, references(:activities, type: :uuid, on_delete: :delete_all))

timestamps()
end

create(unique_index(:bookmarks, [:user_id, :activity_id]))
create_if_not_exists(unique_index(:bookmarks, [:user_id, :activity_id]))
end
end

+ 8
- 2
priv/repo/migrations/20190414125034_migrate_old_bookmarks.exs View File

@@ -6,7 +6,7 @@ defmodule Pleroma.Repo.Migrations.MigrateOldBookmarks do
alias Pleroma.User
alias Pleroma.Repo

def change do
def up do
query =
from(u in User,
where: u.local == true,
@@ -18,7 +18,7 @@ defmodule Pleroma.Repo.Migrations.MigrateOldBookmarks do
|> Enum.each(fn %{id: user_id, bookmarks: bookmarks} ->
Enum.each(bookmarks, fn ap_id ->
activity = Activity.get_create_by_object_ap_id(ap_id)
unless is_nil(activity), do: {:ok, _} = Bookmark.create(user_id, activity.id)
unless is_nil(activity), do: {:ok, _} = Bookmark.create(user_id, activity.id)
end)
end)

@@ -26,4 +26,10 @@ defmodule Pleroma.Repo.Migrations.MigrateOldBookmarks do
remove(:bookmarks)
end
end

def down do
alter table(:users) do
add :bookmarks, {:array, :string}, null: false, default: []
end
end
end

+ 1
- 1
priv/repo/migrations/20190501125843_add_fts_index_to_objects.exs View File

@@ -3,6 +3,6 @@ defmodule Pleroma.Repo.Migrations.AddFTSIndexToObjects do

def change do
drop_if_exists index(:activities, ["(to_tsvector('english', data->'object'->>'content'))"], using: :gin, name: :activities_fts)
create index(:objects, ["(to_tsvector('english', data->>'content'))"], using: :gin, name: :objects_fts)
create_if_not_exists index(:objects, ["(to_tsvector('english', data->>'content'))"], using: :gin, name: :objects_fts)
end
end

+ 1
- 1
priv/repo/migrations/20190501133552_add_refresh_token_index_to_token.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddRefreshTokenIndexToToken do
use Ecto.Migration

def change do
create(unique_index(:oauth_tokens, [:refresh_token]))
create_if_not_exists(unique_index(:oauth_tokens, [:refresh_token]))
end
end

+ 7
- 1
priv/repo/migrations/20190513175809_change_hide_column_in_filter_table.exs View File

@@ -1,9 +1,15 @@
defmodule Pleroma.Repo.Migrations.ChangeHideColumnInFilterTable do
use Ecto.Migration

def change do
def up do
alter table(:filters) do
modify :hide, :boolean, default: false
end
end

def down do
alter table(:filters) do
modify :hide, :boolean
end
end
end

+ 1
- 1
priv/repo/migrations/20190515222404_add_thread_visibility_function.exs View File

@@ -68,6 +68,6 @@ defmodule Pleroma.Repo.Migrations.AddThreadVisibilityFunction do
end

def down do
execute("drop function thread_visibility(actor varchar, activity_id varchar)")
execute("drop function if exists thread_visibility(actor varchar, activity_id varchar)")
end
end

+ 2
- 2
priv/repo/migrations/20190518032627_create_config.exs View File

@@ -2,12 +2,12 @@ defmodule Pleroma.Repo.Migrations.CreateConfig do
use Ecto.Migration

def change do
create table(:config) do
create_if_not_exists table(:config) do
add(:key, :string)
add(:value, :binary)
timestamps()
end

create(unique_index(:config, :key))
create_if_not_exists(unique_index(:config, :key))
end
end

+ 3
- 1
priv/repo/migrations/20190525071417_add_non_follows_and_non_followers_fields_to_notification_settings.exs View File

@@ -1,10 +1,12 @@
defmodule Pleroma.Repo.Migrations.AddNonFollowsAndNonFollowersFieldsToNotificationSettings do
use Ecto.Migration

def change do
def up do
execute("""
update users set info = jsonb_set(info, '{notification_settings}', '{"local": true, "remote": true, "follows": true, "followers": true, "non_follows": true, "non_followers": true}')
where local=true
""")
end

def down, do: :ok
end

+ 1
- 1
priv/repo/migrations/20190603115238_add_index_on_activities_local.exs View File

@@ -2,6 +2,6 @@ defmodule Pleroma.Repo.Migrations.AddIndexOnActivitiesLocal do
use Ecto.Migration

def change do
create(index("activities", [:local]))
create_if_not_exists(index("activities", [:local]))
end
end

+ 1
- 1
priv/repo/migrations/20190603173419_add_tag_index_to_objects.exs View File

@@ -3,6 +3,6 @@ defmodule Pleroma.Repo.Migrations.AddTagIndexToObjects do

def change do
drop_if_exists index(:activities, ["(data #> '{\"object\",\"tag\"}')"], using: :gin, name: :activities_tags)
create index(:objects, ["(data->'tag')"], using: :gin, name: :objects_tags)
create_if_not_exists index(:objects, ["(data->'tag')"], using: :gin, name: :objects_tags)
end
end

+ 2
- 2
priv/repo/migrations/20190622151019_add_group_key_to_config.exs View File

@@ -6,7 +6,7 @@ defmodule Pleroma.Repo.Migrations.AddGroupKeyToConfig do
add(:group, :string)
end

drop(unique_index("config", :key))
create(unique_index("config", [:group, :key]))
drop_if_exists(unique_index("config", :key))
create_if_not_exists(unique_index("config", [:group, :key]))
end
end

+ 5
- 5
priv/repo/optional_migrations/rum_indexing/20190510135645_add_fts_index_to_objects_two.exs View File

@@ -14,7 +14,7 @@ defmodule Pleroma.Repo.Migrations.AddFtsIndexToObjectsTwo do
return new;
end
$$ LANGUAGE plpgsql")
execute("create index objects_fts on objects using RUM (fts_content rum_tsvector_addon_ops, inserted_at) with (attach = 'inserted_at', to = 'fts_content');")
execute("create index if not exists objects_fts on objects using RUM (fts_content rum_tsvector_addon_ops, inserted_at) with (attach = 'inserted_at', to = 'fts_content');")

execute("CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE ON objects
FOR EACH ROW EXECUTE PROCEDURE objects_fts_update()")
@@ -23,12 +23,12 @@ defmodule Pleroma.Repo.Migrations.AddFtsIndexToObjectsTwo do
end

def down do
execute "drop index objects_fts"
execute "drop trigger tsvectorupdate on objects"
execute "drop function objects_fts_update()"
execute "drop index if exists objects_fts"
execute "drop trigger if exists tsvectorupdate on objects"
execute "drop function if exists objects_fts_update()"
alter table(:objects) do
remove(:fts_content, :tsvector)
end
create index(:objects, ["(to_tsvector('english', data->>'content'))"], using: :gin, name: :objects_fts)
create_if_not_exists index(:objects, ["(to_tsvector('english', data->>'content'))"], using: :gin, name: :objects_fts)
end
end

Loading…
Cancel
Save