Re: bumping HASH_VERSION to 3
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Bruce Momjian <bruce@momjian.us>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2017-04-11T18:53:54Z
Lists: pgsql-hackers
On Tue, Apr 11, 2017 at 2:23 PM, Bruce Momjian <bruce@momjian.us> wrote: > On Fri, Mar 31, 2017 at 02:48:05PM -0400, Tom Lane wrote: >> +1, as long as we're clear on what will happen when pg_upgrade'ing >> an installation containing hash indexes. I think a minimum requirement is >> that it succeed and be able to start up, and allow the user to manually >> REINDEX such indexes afterwards. Bonus points for: >> >> 1. teaching pg_upgrade to create a script containing the required REINDEX >> commands. (I think it's produced scripts for similar requirements in the >> past.) >> >> 2. marking the index invalid so that the system would silently ignore it >> until it's been reindexed. I think there might be adequate infrastructure >> for that already thanks to REINDEX CONCURRENTLY, and it'd just be a matter >> of getting pg_upgrade to hack the indexes' catalog state. (If not, it's >> probably not worth the trouble.) > > We already have code to do all of that, but it was removed from > pg_upgrade in 9.5. You can still see it in 9.4: > > contrib/pg_upgrade/version_old_8_3.c::old_8_3_invalidate_hash_gin_indexes() > > I would be happy to restore that code and make it work for PG 10. Cool! -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
pg_upgrade: Handle hash index upgrades more smoothly.
- a95410e2ec39 10.0 landed
-
Expand hash indexes more gradually.
- ea69a0dead51 10.0 landed
-
Cache hash index's metapage in rel->rd_amcache.
- 293e24e50783 10.0 cited