Re: Documentation for partitioned indexes?

From: "Jonathan S(dot) Katz" <jkatz(at)postgresql(dot)org>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-docs(at)lists(dot)postgresql(dot)org
Subject: Re: Documentation for partitioned indexes?
Date: 2019-04-26 19:07:32
Message-ID: 092b21a2-9579-0f1d-bf22-d6b3db2a8b48@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-docs

On 4/26/19 2:53 PM, Alvaro Herrera wrote:
> On 2019-Apr-26, Tom Lane wrote:
>
>> We appear to have a fair amount of support now for operations like
>> constructing a partitioned index piecemeal, e.g. adding indexes
>> to the partitions one at a time and then attaching them to a
>> parent partitioned index, with the parent ultimately transitioning
>> from "not valid" to "valid" once all the pieces are attached.
>>
>> However, I cannot find any coherent documentation explaining how
>> to do this (or why you'd want to). Am I just looking in the wrong
>> places?
>
> Hmm. Under Notes for CREATE INDEX there is a paragraph on this:
>
> When CREATE INDEX is invoked on a partitioned table, the default
> behavior is to recurse to all partitions to ensure they all have
> matching indexes. Each partition is first checked to determine
> whether an equivalent index already exists, and if so, that
> index will become attached as a partition index to the index
> being created, which will become its parent index. If no
> matching index exists, a new index will be created and
> automatically attached; the name of the new index in each
> partition will be determined as if no index name had been
> specified in the command. If the ONLY option is specified, no
> recursion is done, and the index is marked invalid. (ALTER INDEX
> ... ATTACH PARTITION marks the index valid, once all partitions
> acquire matching indexes.) Note, however, that any partition
> that is created in the future using CREATE TABLE ... PARTITION
> OF will automatically have a matching index, regardless of
> whether ONLY is specified.
>
> I suppose I better add something in Chapter 5 (DDL), possibly inside the
> 5.10 section (Table Partitioning) -- a new 5.10.6 "Indexes for
> Partitioned Tables" perhaps?

+1; (though note on devel it's section 5.11, not that it matters in the
SGML)

I'd suggest keeping the title of the section similar to the one with
constraints, i.e. "Partitioning and Indexes"

Thanks,

Jonathan

In response to

Browse pgsql-docs by date

  From Date Subject
Next Message Tom Lane 2019-04-26 19:14:32 Re: Documentation for partitioned indexes?
Previous Message Jonathan S. Katz 2019-04-26 19:04:45 Re: SET ROLE documentation not entirely correct