Re: Partitioned tables and covering indexes

Robert Haas <robertmhaas@gmail.com>

From: Robert Haas <robertmhaas@gmail.com>
To: Alexander Korotkov <a.korotkov@postgrespro.ru>
Cc: Teodor Sigaev <teodor@sigaev.ru>, Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, Peter Geoghegan <pg@bowt.ie>, Alvaro Herrera <alvherre@alvh.no-ip.org>, Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>, Jaime Casanova <jaime.casanova@2ndquadrant.com>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2018-04-12T19:43:35Z
Lists: pgsql-hackers
On Thu, Apr 12, 2018 at 6:14 AM, Alexander Korotkov
<a.korotkov@postgrespro.ru> wrote:
> I'm OK with collation of included columns to be the same as collation
> of underlying table columns.  But I still think we should throw an error
> when user is trying to specify his own collation of included columns.

I agree.  The collation of a table column is just setting a default
for how it gets interpreted in queries, but the collation of an index
column affects the ordering of the index.  For INCLUDE columns, the
latter isn't relevant, so the value has no meaning.  Letting people
set a meaningless value sometimes gets us into trouble (see also the
nearby thread on TABLESPACE settings on partitioned tables).

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Commits

  1. Fix interference between covering indexes and partitioned tables

  2. Cleanup covering infrastructure

  3. Rename IndexInfo.ii_KeyAttrNumbers array