Thread: CREATE SUBSCRIPTION issue

CREATE SUBSCRIPTION issue

From
PG Doc comments form
Date:
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/15/logical-replication-row-filter.html
Description:

Hey I'm using create subscription to subscribe to a table. I have two
different hosts and I want to setup replication between them.
In host 1
I have one schema public and a table domain.

In host 2
I have multiple schemas schema1, schema2, schema3.
I want to copy the data from the host1 to host2 into schema1 and 2 and 3.

While setting up the subscription it's giving me error saying 'relation
"public.domain" does not exist'. because in host2 the table is created in
schema1. So table would look like "schema1.domain". Any idea on how we can
setup such subscription such that schema name shouldn't be an issue.

Re: CREATE SUBSCRIPTION issue

From
"David G. Johnston"
Date:
On Wed, Nov 8, 2023 at 5:42 AM PG Doc comments form <noreply@postgresql.org> wrote:
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/15/logical-replication-row-filter.html
Description:

Hey I'm using create subscription to subscribe to a table. I have two
different hosts and I want to setup replication between them.
In host 1
I have one schema public and a table domain.

In host 2
I have multiple schemas schema1, schema2, schema3.
I want to copy the data from the host1 to host2 into schema1 and 2 and 3.

While setting up the subscription it's giving me error saying 'relation
"public.domain" does not exist'. because in host2 the table is created in
schema1. So table would look like "schema1.domain". Any idea on how we can
setup such subscription such that schema name shouldn't be an issue.

The schema an object is located in is a fundamental component of its name/identity.  The system has no provisions for mapping names on the publisher to different names on the subscriber.

David J.

Re: CREATE SUBSCRIPTION issue

From
Laurenz Albe
Date:
On Wed, 2023-11-08 at 12:26 +0000, PG Doc comments form wrote:
> Hey I'm using create subscription to subscribe to a table. I have two
> different hosts and I want to setup replication between them.
> In host 1
> I have one schema public and a table domain.
>
> In host 2
> I have multiple schemas schema1, schema2, schema3.
> I want to copy the data from the host1 to host2 into schema1 and 2 and 3.
>
> While setting up the subscription it's giving me error saying 'relation
> "public.domain" does not exist'. because in host2 the table is created in
> schema1. So table would look like "schema1.domain". Any idea on how we can
> setup such subscription such that schema name shouldn't be an issue.

That is not supported yet.  You cannot do that.

Yours,
Laurenz Albe