Re: Strange behavior of child table.

From: Greg Smith <greg(at)2ndQuadrant(dot)com>
To: pgsql-admin(at)postgresql(dot)org
Subject: Re: Strange behavior of child table.
Date: 2011-06-01 10:23:28
Message-ID: 4DE61320.6070104@2ndQuadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On 06/01/2011 02:07 AM, Jenish wrote:
> select * from Round_Action where action_id =50000 limit 100 →
> execution time 80 sec
>
> select * from Round_Action_CH1 action_id =50000 limit 100 → execution
> time 0.1 sec
>
>

First off: each of the child tables needs to have the index created on
them. That doesn't get inherited just by putting it on the master.

If you already did that, try running these both with "EXPLAIN". Sharing
the two query plans here would help figure out what's happening.
Showing the definition of the index on one of the child tables would be
helpful too.

There are some optimizer limitations in PostgreSQL versions before 9.0
that prevent it from using an index on the child tables in some
situations where people expect it to, which includes aggregates like
MIN/MIN. I'm not sure if your LIMIT case is running into the same
issue, the plan will help confirm what's going on.

--
Greg Smith 2ndQuadrant US greg(at)2ndQuadrant(dot)com Baltimore, MD
PostgreSQL Training, Services, and 24x7 Support www.2ndQuadrant.us
"PostgreSQL 9.0 High Performance": http://www.2ndQuadrant.com/books

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Greg Smith 2011-06-01 10:47:51 Re: patching the OS of a 9.0.4 db with hot standby
Previous Message Jenish 2011-06-01 06:07:29 Strange behavior of child table.