Re: Slow performance with no apparent reason

From: Martijn van Oosterhout <kleptog(at)svana(dot)org>
To: Yonatan Goraly <ygoraly(at)sbcglobal(dot)net>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Slow performance with no apparent reason
Date: 2003-10-26 07:43:54
Message-ID: 20031026074354.GB15100@svana.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-performance

Please supply EXPLAIN ANALYZE output.

On Sun, Oct 26, 2003 at 12:25:37AM +0300, Yonatan Goraly wrote:
> I am in the process of adding PostgreSQL support for an application, in
> addition to Oracle and MS SQL.
> I am using PostgreSQL version 7.3.2, Red Hat 9.0 on Intel Pentium III board.
>
> I have a query that generally looks like this:
>
> SELECT t1.col1, t2.col1 FROM t1, t2 WHERE t1.x=t2.y AND t2.p='string'
> AND t2.q=1
>
> This query is strikingly slow (about 100 sec when both t1 and t2 has
> about 1,200 records, compare with less than 4 sec with MS SQL and Oracle)
>
> The strange thing is that if I remove one of the last 2 conditions
> (doesn't matter which one), I get the same performance like with the
> other databases.
> Since in this particular case both conditions ( t2.p='string', t2.q=1)
> are not required, I can't understand why having both turns the query so
> slow.
> A query on table t2 alone is fast with or without the 2 conditions.
>
> I tired several alternatives, this one works pretty well:
>
> SELECT t1.col1, t2.col1 FROM t1, t2 WHERE t1.x=t2.y AND
> EXISTS (
> SELECT * FROM t2 t2a WHERE t2a.p='string' AND t2a.q=1 AND
> t2a.y=t2.y )
>
> Since the first query is simpler than the second, it seems to me like a bug.
>
> Please advise
>
> Yonatan

--
Martijn van Oosterhout <kleptog(at)svana(dot)org> http://svana.org/kleptog/
> "All that is needed for the forces of evil to triumph is for enough good
> men to do nothing." - Edmond Burke
> "The penalty good people pay for not being interested in politics is to be
> governed by people worse than themselves." - Plato

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Martijn van Oosterhout 2003-10-26 09:29:48 Re: Slow performance with no apparent reason
Previous Message Michael Teter 2003-10-26 07:24:24 Re: [OT] Choosing a scripting language.

Browse pgsql-performance by date

  From Date Subject
Next Message Martijn van Oosterhout 2003-10-26 09:29:48 Re: Slow performance with no apparent reason
Previous Message Bruce Momjian 2003-10-26 04:36:09 Re: analyzing postgresql performance for dbt-2