Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nrh5G-0007pD-Jh for pgsql-hackers@arkaria.postgresql.org; Thu, 19 May 2022 14:24:58 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nrh5F-0005qH-8i for pgsql-hackers@arkaria.postgresql.org; Thu, 19 May 2022 14:24:57 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nrh5E-0005q7-W6 for pgsql-hackers@lists.postgresql.org; Thu, 19 May 2022 14:24:56 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nrh5C-00025k-7Q for pgsql-hackers@lists.postgresql.org; Thu, 19 May 2022 14:24:56 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 24JEOkod165765; Thu, 19 May 2022 10:24:46 -0400 From: Tom Lane To: Justin Pryzby cc: Amit Kapila , Alvaro Herrera , houzj.fnst@fujitsu.com, Tomas Vondra , Peter Eisentraut , pgsql-hackers@lists.postgresql.org Subject: Re: bogus: logical replication rows/cols combinations In-reply-to: <20220519120724.GO19626@telsasoft.com> References: <202205161320.butjtubabvgj@alvherre.pgsql> <20220519120724.GO19626@telsasoft.com> Comments: In-reply-to Justin Pryzby message dated "Thu, 19 May 2022 07:07:24 -0500" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <165763.1652970286.1@sss.pgh.pa.us> Content-Transfer-Encoding: quoted-printable Date: Thu, 19 May 2022 10:24:46 -0400 Message-ID: <165764.1652970286@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Justin Pryzby writes: > On Thu, May 19, 2022 at 10:33:13AM +0530, Amit Kapila wrote: >> I have committed the first patch after fixing this part. It seems Tom >> is not very happy doing this after beta-1 [1]. The reason we get this >> information via this view (and underlying function) is that it >> simplifies the queries on the subscriber-side as you can see in the >> second patch. The query change is as below: >> [1] - https://www.postgresql.org/message-id/91075.1652929852%40sss.pgh.= pa.us > I think Tom's concern is that adding information to a view seems like ad= ding a > feature that hadn't previously been contemplated. > (Catalog changes themselves are not prohibited during the beta period). It certainly smells like a new feature, but my concern was more around the post-beta catalog change. We do those only if really forced to, and the explanation in the commit message didn't satisfy me as to why it was necessary. This explanation isn't much better --- if we're trying to prohibit a certain class of publication definitions, what good does it do to check that on the subscriber side? Even more to the point, how can we have a subscriber do that by relying on view columns that don't exist in older versions? I'm also quite concerned about anything that involves subscribers examining row filter conditions; that sounds like a pretty direct route to bugs involving unsolvability and the halting problem. (But I've not read very much of this thread ... been a bit under the weather the last couple weeks. Maybe this actually is a sane solution. It just doesn't sound like one at this level of detail.) regards, tom lane