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 1nUbni-0005fv-2n for pgsql-hackers@arkaria.postgresql.org; Wed, 16 Mar 2022 22:07:26 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nUbmi-0007St-TP for pgsql-hackers@arkaria.postgresql.org; Wed, 16 Mar 2022 22:06:24 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nUbmh-0007Sk-Mr for pgsql-hackers@lists.postgresql.org; Wed, 16 Mar 2022 22:06:24 +0000 Received: from out4-smtp.messagingengine.com ([66.111.4.28]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nUbme-0001fT-JP for pgsql-hackers@lists.postgresql.org; Wed, 16 Mar 2022 22:06:22 +0000 Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id D08EF5C01E9; Wed, 16 Mar 2022 18:06:18 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Wed, 16 Mar 2022 18:06:18 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:reply-to:sender:subject:subject:to:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; bh=tL1qU+PHSz74xk4Ho4ohPIdyUytp3IuR0RL/Ffjq+bs=; b=CnYiVspR QCSKvpyP3UL1BxqOYC8LPA5IaotCo4V07Zjp9HvXS5rETRdv6piQ1LgvLLt1uXzy SGN2DJppOA+c37gV6Veo8j52Y+BWURBm/wCTOLIiMYgt6niIkMQxUIlX68Grvy1j iElPFZtearuG2H6ZrFl8spgTzkRVvNoI5CWBe6kX22PWDBar8mrW2Cv0C+VlTL7c aw4/iHYWeN4s8yBKZyD45+HbkGhLVczX1w+vNfKKzl8SjejpMCYqbUu5cCC1kbXO hQO5dPtogsoVkKg8ZvJK3rU+YHvqF56SPmJMkTgtLnnUi8XFI2ldogCy+W3gQlJu ZGLInYYOQcgZEQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvvddrudefvddgudehfecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvuffkgggtugfgjgesthekredttddtjeenucfhrhhomheptehlvhgr rhhoucfjvghrrhgvrhgruceorghlvhhhvghrrhgvsegrlhhvhhdrnhhoqdhiphdrohhrgh eqnecuggftrfgrthhtvghrnhepleefkefhgfelteeigeejkedvjedvlefhueehfedvjeeh ueetveetjeekueffgfehnecuffhomhgrihhnpehpohhsthhgrhgvshhqlhdrohhrghdpvg hnthgvrhhprhhishgvuggsrdgtohhmnecuvehluhhsthgvrhfuihiivgeptdenucfrrghr rghmpehmrghilhhfrhhomheprghlvhhhvghrrhgvsegrlhhvhhdrnhhoqdhiphdrohhrgh X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 16 Mar 2022 18:06:18 -0400 (EDT) Received: by perhan.alvh.no-ip.org (Postfix, from userid 1000) id 3E6892A08C1; Wed, 16 Mar 2022 19:06:18 -0300 (-03) Date: Wed, 16 Mar 2022 23:06:18 +0100 From: Alvaro Herrera To: Zheng Li Cc: Dilip Kumar , PostgreSQL Hackers , rajesh.rs0541@gmail.com Subject: Re: Support logical replication of DDLs Message-ID: <202203162206.7spggyktx63e@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 Hello I think this is a pretty interesting and useful feature. Did you see some old code I wrote towards this goal? https://www.postgresql.org/message-id/20150215044814.GL3391@alvh.no-ip.org The intention was that DDL would produce some JSON blob that accurately describes the DDL that was run; the caller can acquire that and use it to produce working DDL that doesn't depend on runtime conditions. There was lots of discussion on doing things this way. It was ultimately abandoned, but I think it's valuable. -- Álvaro Herrera Valdivia, Chile — https://www.EnterpriseDB.com/ "Porque francamente, si para saber manejarse a uno mismo hubiera que rendir examen... ¿Quién es el machito que tendría carnet?" (Mafalda)