Re: on placeholder entries in view rule action query's range table
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andrew Dunstan <andrew@dunslane.net>
Cc: Justin Pryzby <pryzby@telsasoft.com>,
Amit Langote <amitlangote09@gmail.com>,
vignesh C <vignesh21@gmail.com>,
Alvaro Herrera <alvherre@alvh.no-ip.org>,
pgsql-hackers@lists.postgresql.org
Date: 2023-01-12T17:31:15Z
Lists: pgsql-hackers
Andrew Dunstan <andrew@dunslane.net> writes: > On 2023-01-12 Th 09:54, Tom Lane wrote: >> I was wondering whether we could store a per-version patch or Perl >> script that edits the old dump file to remove known discrepancies >> from HEAD. > so, say in src/test/perl we have PostgreSQL/AdjustUpgrade.pm with a > subroutine adjust_dumpfile($oldversion, $dumpfile). Seems reasonable. I was imagining per-old-version .pm files, but there's likely to be a fair amount of commonality between what to do for different old versions, so probably that approach would be too duplicative. > That would be fairly easy to look for and call, and a good place to > start. More ambitiously we might also provide a function do do most of > the pre_upgrade adjustments made in TestUpgradeXversion.pm at lines > 405-604. But let's walk before we try to run. I think that part is also very very important to abstract out of the BF client. We've been burnt on that before too. So, perhaps one subroutine that can apply updates to the source DB just before we dump it, and then a second that can edit the dump file after? We could imagine a third custom subroutine that abstracts the actual dump file comparison, but I'd prefer to get to a place where we just expect exact match after the edit step. I'll work on a straw-man patch. regards, tom lane
Commits
-
Acquire locks on views in AcquirePlannerLocks, too.
- 65eb2d00c6c1 16.0 landed
-
Get rid of the "new" and "old" entries in a view's rangetable.
- 47bb9db75996 16.0 landed
- 1b4d280ea1eb 16.0 landed
-
vacuumlazy.c: Save get_database_name() in vacrel.
- 54afdcd6182a 16.0 cited