From: | Marko Tiikkaja <marko(at)joh(dot)to> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: get_actual_variable_range vs idx_scan/idx_tup_fetch |
Date: | 2014-10-17 21:49:05 |
Message-ID: | 54418ED1.4020201@joh.to |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 10/17/14, 11:47 PM, Tom Lane wrote:
> Marko Tiikkaja <marko(at)joh(dot)to> writes:
>> This week we had one of the most annoying problems I've ever encountered
>> with postgres. We had a big index on multiple columns, say, foo(a, b,
>> c). According to pg_stat_all_indexes the index was being used *all the
>> time*. However, after looking into our queries more closely, it turns
>> out that it was only being used to look up statistics for the foo.a
>> column to estimate merge scan viability during planning. But this took
>> hours for two people to track down.
>
>> So what I'd like to have is a way to be able to distinguish between
>> indexes being used to answer queries, and ones being only used for stats
>> lookups during planning.
>
> Why? Used is used.
Because I don't need a 30GB index on foo(a,b,c) to look up statistics.
If I ever have a problem, I can replace it with a 5GB one on foo(a).
.marko
From | Date | Subject | |
---|---|---|---|
Next Message | Jim Nasby | 2014-10-17 21:59:10 | Re: get_actual_variable_range vs idx_scan/idx_tup_fetch |
Previous Message | Tom Lane | 2014-10-17 21:47:59 | Re: get_actual_variable_range vs idx_scan/idx_tup_fetch |