On Fri, Jul 2, 2021 at 11:11 AM vignesh C <vignes...@gmail.com> wrote: > > Hi, > > I found a strange behavior when there is an insert after renaming the > schema. The test steps for the same are given below, Here after the > schema is renamed, the renamed schema table data should not be sent, > but the data was being sent. I felt the schema invalidation was not > called, attached a patch to handle the same. Thoughts? > > step 1) > Create schema sch1; > Create table sch1.t1(c1 int); > CREATE PUBLICATION mypub1 FOR all tables; > > Step 2) > CREATE SCHEMA sch1; > CREATE TABLE sch1.t1(c1 int); > CREATE SCHEMA sch2; > CREATE TABLE sch2.t1(c1 int); > CREATE TABLE t1(c1 int); > CREATE SUBSCRIPTION mysub1 CONNECTION 'host=localhost port=5432 > dbname=postgres' PUBLICATION mypub1; > > Step 3) > begin; > insert into sch1.t1 values(1); > alter schema sch1 rename to sch2; > create schema sch1; > create table sch1.t1(c1 int); > insert into sch1.t1 values(2); > insert into sch2.t1 values(3); > commit; > > step 4) > select * from sch1.t1; # In subscriber > Got: > c1 > ---- > 1 > 2 > 3 > (3 rows) > > Expected: > c1 > ---- > 1 > 2 > (2 rows)
Yeah, this looks like a bug. I will look at the patch. -- Regards, Dilip Kumar EnterpriseDB: http://www.enterprisedb.com