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 1pF0zs-0005qu-OQ for pgsql-hackers@arkaria.postgresql.org; Mon, 09 Jan 2023 22:52:04 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pF0zp-0007VA-Gj for pgsql-hackers@arkaria.postgresql.org; Mon, 09 Jan 2023 22:52:01 +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 1pF0zp-0007V0-7c for pgsql-hackers@lists.postgresql.org; Mon, 09 Jan 2023 22:52:01 +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 1pF0zi-0007CA-Ez for pgsql-hackers@lists.postgresql.org; Mon, 09 Jan 2023 22:52:00 +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 309Mpnuw055513; Mon, 9 Jan 2023 17:51:49 -0500 From: Tom Lane To: Regina Obe cc: pgsql-hackers@lists.postgresql.org, Sandro Santilli Subject: Re: [PATCH] Support % wildcard in extension upgrade filenames In-reply-to: <166914379479.1121.7549798686571352890.pgcf@coridan.postgresql.org> References: <20221117095734.igldlk6kngr6ogim@c19> <166914379479.1121.7549798686571352890.pgcf@coridan.postgresql.org> Comments: In-reply-to Regina Obe message dated "Tue, 22 Nov 2022 19:03:14 +0000" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <55511.1673304709.1@sss.pgh.pa.us> Date: Mon, 09 Jan 2023 17:51:49 -0500 Message-ID: <55512.1673304709@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk I continue to think that this is a fundamentally bad idea. It creates all sorts of uncertainties about what is a valid update path and what is not. Restrictions like + Such wildcard update + scripts will only be used when no explicit path is found from + old to target version. are just band-aids to try to cover up the worst problems. Have you considered the idea of instead inventing a "\include" facility for extension scripts? Then, if you want to use one-monster-script to handle different upgrade cases, you still need one script file for each supported upgrade step, but those can be one-liners including the common script file. Plus, such a facility could be of use to people who want intermediate factorization solutions (that is, some sharing of code without buying all the way into one-monster-script). regards, tom lane