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 1mQTQj-0001z7-Iv for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Sep 2021 11:50:21 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1mQTQh-0002Ep-KL for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Sep 2021 11:50:19 +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 1mQTQg-0002Eh-PF for pgsql-hackers@lists.postgresql.org; Wed, 15 Sep 2021 11:50:19 +0000 Received: from wout2-smtp.messagingengine.com ([64.147.123.25]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mQTQd-000855-1W for pgsql-hackers@postgresql.org; Wed, 15 Sep 2021 11:50:18 +0000 Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.west.internal (Postfix) with ESMTP id 1FDDC32009B1; Wed, 15 Sep 2021 07:50:11 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Wed, 15 Sep 2021 07:50:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:subject:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; bh=I9LNAA/yMHoJUrEZEP6OV2VnCund3AxOH1rT2EgJ+y0=; b=jbn3VpJp 3YIeafzV25U2rRbGKpcl2v6KaCYvnbQfWsTDtnb7mLLFM1zwtI0aCDiXNrhji+Jb lfuqIyC9HM5sA+h/rT4yABQ1gBhxCUgy3fV7xm1GFNkwt9S0OhBB8RK7wqv2EdXO PP/e4MLhMhvQ49H5JztNmvFO9kHrt5y0Nk5PHqwTSpdg4NMaMsy43ACb21OggPMI PvwQPuyDe5xuE5G6gIVuc9VYNcNgadXCp6q1C4AxGIHn1q2PAHgHaSjfyGV11YpC OZUjetaKjTk8jszeVjCzLTM9P2+YLtZXY8FdN/70TWO3n3vevnUJDbx2J1A81ifx k3p2k0x2y2nexQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvtddrudehuddggeduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvffukfggtggugfgjsehtkeertddttdejnecuhfhrohhmpeetlhhvrghr ohcujfgvrhhrvghrrgcuoegrlhhvhhgvrhhrvgesrghlvhhhrdhnohdqihhprdhorhhgqe enucggtffrrghtthgvrhhnpedujeevjeffjeevuddutedvkeeiueeitddvieelfeekveej udefgeeuvdejhfeuleenucffohhmrghinhepvghnthgvrhhprhhishgvuggsrdgtohhmne cuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheprghlvhhh vghrrhgvsegrlhhvhhdrnhhoqdhiphdrohhrgh X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 15 Sep 2021 07:50:10 -0400 (EDT) Received: by perhan.alvh.no-ip.org (Postfix, from userid 1000) id 3D08B2A083F; Wed, 15 Sep 2021 08:50:07 -0300 (-03) Date: Wed, 15 Sep 2021 08:50:07 -0300 From: Alvaro Herrera To: Amit Kapila Cc: Rahila Syed , Tomas Vondra , Peter Smith , PostgreSQL-development Subject: Re: Column Filtering in Logical Replication Message-ID: <202109151150.2gbvjmwvgoin@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 2021-Sep-15, Amit Kapila wrote: > On Mon, Sep 6, 2021 at 11:21 PM Alvaro Herrera wrote: > > > > I pushed the clerical part of this -- namely the addition of > > PublicationTable node and PublicationRelInfo struct. > > One point to note here is that we are developing a generic grammar for > publications where not only tables but other objects like schema, > sequences, etc. can be specified, see [1]. So, there is some overlap > in the grammar modifications being made by this patch and the work > being done in that other thread. Oh rats. I was not aware of that thread, or indeed of the fact that adding multiple object types to publications was being considered. I do see that 0002 there contains gram.y changes, but AFAICS those changes don't allow specifying a column list for a table, so there are some changes needed in that patch for that either way. I agree that it's better to move forward in unison. I noticed that 0002 in that other patch uses a void * pointer in PublicationObjSpec that "could be either RangeVar or String", which strikes me as a really bad idea. (Already discussed in some other thread recently, maybe this one or the row filtering one.) -- Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/