On Tue, Jun 25, 2019 at 4:00 PM Amit Kapila <amit.kapil...@gmail.com> wrote: > [ new patches ]
I happened to open up 0001 from this series, which is from Thomas, and I do not think that the pg_buffercache changes are correct. The idea here is that the customer might install version 1.3 or any prior version on an old release, then upgrade to PostgreSQL 13. When they do, they will be running with the old SQL definitions and the new binaries. At that point, it sure looks to me like the code in pg_buffercache_pages.c is going to do the Wrong Thing. There's some existing code in there to omit the pinning_backends column if the SQL definitions don't know about it; instead of adding similar code for the newly-added smgrid column, this patch rips out the existing backward-compatibility code. I think that's a double fail. At some later point, the customer is going to run ALTER EXTENSION pg_buffercache UPDATE. At that point they are going to be expecting that their SQL definitions now match the state that would have been created had they installed on pg_buffercache for the first time on PG13, starting with pg_buffercache v1.4. Since the view is now going to have a new column, that would seem to required dropping and recreating the view, but pg_buffercache--1.3--1.4.sql doesn't do that. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company