From: | Pete Yunker <peter(dot)yunker(at)homejunction(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | dinesh kumar <dineshkumar02(at)gmail(dot)com>, AI Rumman <rummandba(at)gmail(dot)com>, pgsql-general General <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: when do I analyze after concurrent index creation? |
Date: | 2013-10-18 15:50:03 |
Message-ID: | 4D39F97C-1DFD-41B2-A5AD-E7988054D80E@homejunction.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Would a simple multi-column index be considered an 'expression' in this context, meaning that an ANALYZE should be issued after the creation of such an index?
---
Pete Yunker
Vice President of Data Products
Home Junction, Inc.
On Oct 18, 2013, at 11:42 AM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> dinesh kumar <dineshkumar02(at)gmail(dot)com> writes:
>> When we create an index, i believe the postgres engine it self update it's
>> catalog about the index availability.
>
> ANALYZE normally collects statistics about the contents of table columns.
> Thus, adding (or removing) an index does not create any reason to
> re-ANALYZE.
>
> However ... if you have an index on an expression (not just a simple
> column value), that cues ANALYZE to collect statistics about the values of
> that expression. So re-analyzing is useful after creating such an index,
> to give the planner a better idea of when to use that index.
>
> Whether you used CREATE INDEX CONCURRENTLY or some other way of creating
> the index doesn't matter at all.
>
> regards, tom lane
>
>
> --
> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2013-10-18 15:57:33 | Re: when do I analyze after concurrent index creation? |
Previous Message | Tomas Vondra | 2013-10-18 15:49:49 | Re: Need some help on Performance 9.0.4 |