Align event_tags partition lifecycle with events
This commit is contained in:
@@ -30,7 +30,10 @@ defmodule Parrhesia.Repo.Migrations.CreateRelayStorage do
|
||||
create(index(:events, [:expires_at], where: "expires_at IS NOT NULL"))
|
||||
create(index(:events, [:deleted_at], where: "deleted_at IS NOT NULL"))
|
||||
|
||||
create table(:event_tags, primary_key: false) do
|
||||
create table(:event_tags,
|
||||
primary_key: false,
|
||||
options: "PARTITION BY RANGE (event_created_at)"
|
||||
) do
|
||||
add(:event_created_at, :bigint, null: false)
|
||||
add(:event_id, :binary, null: false)
|
||||
add(:name, :string, null: false)
|
||||
@@ -39,6 +42,8 @@ defmodule Parrhesia.Repo.Migrations.CreateRelayStorage do
|
||||
timestamps(updated_at: false, type: :utc_datetime_usec)
|
||||
end
|
||||
|
||||
execute("CREATE TABLE event_tags_default PARTITION OF event_tags DEFAULT")
|
||||
|
||||
execute("""
|
||||
ALTER TABLE event_tags
|
||||
ADD CONSTRAINT event_tags_event_fk
|
||||
@@ -149,6 +154,8 @@ defmodule Parrhesia.Repo.Migrations.CreateRelayStorage do
|
||||
drop(table(:banned_pubkeys))
|
||||
drop(table(:addressable_event_state))
|
||||
drop(table(:replaceable_event_state))
|
||||
|
||||
execute("DROP TABLE event_tags_default")
|
||||
drop(table(:event_tags))
|
||||
|
||||
execute("DROP TABLE events_default")
|
||||
|
||||
Reference in New Issue
Block a user