From 42e3027c34f44d6da2d1934eac6ea7820e30e160 Mon Sep 17 00:00:00 2001 From: Jamil Date: Wed, 25 Jun 2025 14:02:01 -0700 Subject: [PATCH] fix(portal): use replication config in dev (#9676) --- elixir/apps/domain/lib/domain/replication/connection.ex | 9 ++++++--- elixir/config/config.exs | 4 ++++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/elixir/apps/domain/lib/domain/replication/connection.ex b/elixir/apps/domain/lib/domain/replication/connection.ex index 7540567b2..1a8b7f622 100644 --- a/elixir/apps/domain/lib/domain/replication/connection.ex +++ b/elixir/apps/domain/lib/domain/replication/connection.ex @@ -96,8 +96,8 @@ defmodule Domain.Replication.Connection do defstruct schema: @schema, step: :disconnected, - publication_name: "", - replication_slot_name: "", + publication_name: nil, + replication_slot_name: nil, output_plugin: @output_plugin, proto_version: @proto_version, table_subscriptions: [], @@ -209,7 +209,10 @@ defmodule Domain.Replication.Connection do state.table_subscriptions |> Enum.map_join(",", fn table -> "#{state.schema}.#{table}" end) - Logger.info("#{__MODULE__}: Creating publication with tables: #{tables}") + Logger.info( + "#{__MODULE__}: Creating publication #{state.publication_name} with tables: #{tables}" + ) + query = "CREATE PUBLICATION #{state.publication_name} FOR TABLE #{tables}" {:query, query, %{state | step: :check_replication_slot}} end diff --git a/elixir/config/config.exs b/elixir/config/config.exs index 9c4e6c13b..46abe73b0 100644 --- a/elixir/config/config.exs +++ b/elixir/config/config.exs @@ -34,6 +34,8 @@ config :domain, Domain.Repo, start_apps_before_migration: [:ssl, :logger_json] config :domain, Domain.ChangeLogs.ReplicationConnection, + replication_slot_name: "change_logs_slot", + publication_name: "change_logs_publication", enabled: true, connection_opts: [ hostname: "localhost", @@ -67,6 +69,8 @@ config :domain, Domain.ChangeLogs.ReplicationConnection, ] config :domain, Domain.Events.ReplicationConnection, + replication_slot_name: "events_slot", + publication_name: "events_publication", enabled: true, connection_opts: [ hostname: "localhost",