Re: ALTER tbl rewrite loses CLUSTER ON index
От | Justin Pryzby |
---|---|
Тема | Re: ALTER tbl rewrite loses CLUSTER ON index |
Дата | |
Msg-id | 20200229024202.GH29456@telsasoft.com обсуждение исходный текст |
Ответ на | Re: ALTER tbl rewrite loses CLUSTER ON index (consider moving indisclustered to pg_class) (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: ALTER tbl rewrite loses CLUSTER ON index
|
Список | pgsql-hackers |
On Fri, Feb 28, 2020 at 06:26:04PM -0500, Tom Lane wrote: > Justin Pryzby <pryzby@telsasoft.com> writes: > > I think the attached is 80% complete (I didn't touch pg_dump). > > One objection to this change would be that all relations (including indices) > > end up with relclustered fields, and pg_index already has a number of bools, so > > it's not like this one bool is wasting a byte. > > I think relisclustered was a's clever way of avoiding that overhead (c0ad5953). > > So I would be -0.5 on moving it to pg_class.. > > But I think 0001 and 0002 are worthy. Maybe the test in 0002 should live > > somewhere else. > > 0001 has been superseded by events (faade5d4c), so the cfbot is choking > on that one's failure to apply, and not testing any further. Please > repost without 0001 so that we can get this testing again. I've just noticed while working on (1) that this separately affects REINDEX CONCURRENTLY, which would be a new bug in v12. Without CONCURRENTLY there's no issue. I guess we need a separate patch for that case. (1) https://commitfest.postgresql.org/27/2269/ The ALTER bug goes back further and its fix should be a kept separate. postgres=# DROP TABLE tt; CREATE TABLE tt(i int unique); CLUSTER tt USING tt_i_key; CLUSTER tt; REINDEX INDEX tt_i_key; CLUSTERtt; DROP TABLE CREATE TABLE CLUSTER CLUSTER REINDEX CLUSTER postgres=# DROP TABLE tt; CREATE TABLE tt(i int unique); CLUSTER tt USING tt_i_key; CLUSTER tt; REINDEX INDEX CONCURRENTLYtt_i_key; CLUSTER tt; DROP TABLE CREATE TABLE CLUSTER CLUSTER REINDEX ERROR: there is no previously clustered index for table "tt" -- Justin
В списке pgsql-hackers по дате отправления: