Re: Disable an index temporarily

From: Thomas Kellerer <spam_eater(at)gmx(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Disable an index temporarily
Date: 2014-04-20 10:08:22
Message-ID: lj06ag$4a6$1@ger.gmane.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Torsten Förtsch wrote on 20.04.2014 10:09:
> The problem is I have a number of indexes in a large system that are
> very similar. And I suspect some of them are superfluous.
>
> Example:
>
> btree (fmb_id, action_type)
> btree (fmb_id)
>
> Action_type in this case is one out of a handful of values (should
> perhaps be an ENUM but is TEXT) and for most of the table the
> combination of (fmb_id, action_type) is unique. The table itself has
> ~2E8 rows. So it takes a while to build these indexes from scratch.
>
> Now, we have several performance counters in place. I want to disable
> these indexes one by one and see what happens. I am probably not able to
> find all of the queries that use them. But I believe that nothing much
> happens if I drop one of them (preferably the former?).

What about monitoring pg_stat_all_indexes to see if an index is used:

http://www.postgresql.org/docs/current/static/monitoring-stats.html#PG-STAT-ALL-INDEXES-VIEW

Btw: in the above example the second one is definitely not needed.
Any query that uses the second one (single column) can also use the first one.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Torsten Förtsch 2014-04-20 11:19:09 Re: Disable an index temporarily
Previous Message Gavin Flower 2014-04-20 09:59:00 Re: Disable an index temporarily