Re: [HACKERS] Proposal: Local indexes for partitioned table
Alvaro Herrera <alvherre@alvh.no-ip.org>
From: Alvaro Herrera <alvherre@alvh.no-ip.org>
To: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>, Jesper Pedersen <jesper.pedersen@redhat.com>, David Rowley <david.rowley@2ndquadrant.com>, Simon Riggs <simon@2ndquadrant.com>, Pg Hackers <pgsql-hackers@postgresql.org>, Maksim Milyutin <milyutinma@gmail.com>
Date: 2018-01-04T22:01:33Z
Lists: pgsql-hackers
Peter Eisentraut wrote: > On 1/4/18 12:00, Robert Haas wrote: > >> The catalog representations of partitioned tables and partitioned > >> indexes are completely different, which may or may not be desirable. > > > > How so? > > If someone wants to write a query, show me all the partitions of this > table versus show me all the partitions of this index, intuitively, > those could be the same, different only by some relkind references. Well, this "indparentidx" stuff I came up with is a little bit strange. Perhaps we could use pg_inherits instead, but I think the general view is that pg_inherits is on its way out. Tangentially: I didn't like very much that I added a new index to pg_index to support this feature. I thought maybe it'd be better to change the index on indrelid to be on (indrelid,indparentidx) instead, but that doesn't seem great either because it bloats that index which is used to support common relcache operations ... (The more I think of this, the more I believe that pg_inherits is a better answer. Opinions?) -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Commits
-
Local partitioned indexes
- 8b08f7d4820f 11.0 landed
-
Fix StoreCatalogInheritance1 to use 32bit inhseqno
- 1ef61ddce908 11.0 landed
- 9a215fb4b5ec 9.3.21 landed
- 8a71ee628854 9.6.7 landed
- 61f08c016322 10.2 landed
- 1284d18b5de9 9.4.16 landed
- 0d993709a773 9.5.11 landed
-
Get rid of copy_partition_key
- 8a0596cb656e 11.0 landed
-
Simplify index_[constraint_]create API
- a61f5ab98638 11.0 landed