Re: ALTER tbl rewrite loses CLUSTER ON index
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Justin Pryzby <pryzby@telsasoft.com>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>, Amit Langote <amitlangote09@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@postgresql.org
Date: 2020-04-02T07:39:58Z
Lists: pgsql-hackers
On Thu, Apr 02, 2020 at 04:24:03PM +0900, Michael Paquier wrote: > On Thu, Apr 02, 2020 at 01:52:09AM -0500, Justin Pryzby wrote: >> Sounds right. Or else get_index_isclustered() could be redefined to take a >> boolean "do_elog" flag, and if syscache fails and that's false, then return >> false instead of ERROR. > > Not sure if that's completely right to do either. For one, it is not > consistent with the surroundings as of lsyscache.c. Actually, we do have some missing_ok flags lying around already in lsyscache.c, so it would be much more consistent to use that name that instead of the do_elog you are suggesting. Could you update the patch to reflect that? -- Michael
Commits
-
Refactor cluster.c to use new routine get_index_isclustered()
- 8ef9451f58ee 13.0 landed
-
Preserve clustered index after rewrites with ALTER TABLE
- 3f77a670241d 9.5.22 landed
- 61a161fe4421 9.6.18 landed
- cef2b8d52c59 10.13 landed
- 41faafbd75a5 11.8 landed
- 3e62dd3a937b 12.3 landed
- a40caf5f862c 13.0 landed
-
Preserve replica identity index across ALTER TABLE rewrite
- 1cc9c2412cc9 13.0 cited
-
Remove RangeIOData->typiofunc
- a77315fdf2a1 13.0 cited
-
Preserve pg_index.indisclustered across REINDEX CONCURRENTLY
- f087d63a45b5 12.3 landed
- d79fb88ac738 13.0 landed