Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Schmitz, David
Grittner Cc: Schmitz, David; pgsql-performance@postgresql.org Betreff: Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1 On Mon, Dec 7, 2009 at 5:19 PM, Kevin Grittner kevin.gritt...@wicourts.gov wrote: Schmitz, David david.schm...@harman.com wrote: It is carried out with poor

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Schmitz, David
Cc: Schmitz, David Betreff: Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1 Hi David, On Monday 07 December 2009 23:05:14 Schmitz, David wrote: With our data it is a performance difference from 1h16min (8.3.8) to 2h43min (8.4.1) Can you afford a explain analyze run

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Thom Brown
: Dienstag, 8. Dezember 2009 00:25 An: pgsql-performance@postgresql.org Cc: Schmitz, David Betreff: Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1 Hi David, On Monday 07 December 2009 23:05:14 Schmitz, David wrote: With our data it is a performance difference from 1h16min

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Schmitz, David
...@gmail.com] Gesendet: Dienstag, 8. Dezember 2009 11:12 An: Schmitz, David Cc: Andres Freund; pgsql-performance@postgresql.org Betreff: Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1 2009/12/8 Schmitz, David

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Andres Freund
Hi David, On Tuesday 08 December 2009 10:59:51 Schmitz, David wrote: With our data it is a performance difference from 1h16min (8.3.8) to 2h43min (8.4.1) On Postgresql 8.4.1 Total runtime: 101.446 ms and on Postgresql 8.3.8: Total runtime: 29.366 ms Hm. There obviously is more going on

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Schmitz, David
: Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1 Hi David, On Tuesday 08 December 2009 10:59:51 Schmitz, David wrote: With our data it is a performance difference from 1h16min (8.3.8) to 2h43min (8.4.1) On Postgresql 8.4.1 Total runtime: 101.446 ms and on Postgresql

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Craig Ringer
On 8/12/2009 6:11 PM, Thom Brown wrote: Your output shows that the xdf_admin_hierarchy tables between versions are drastically different. 8.3.8 only contains 1 row, whereas 8.4.1 contains 84211 rows. That's just because one of them is doing a nested loop where it looks up a single row from

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Schmitz, David
...@postnewspapers.com.au] Gesendet: Dienstag, 8. Dezember 2009 13:12 An: Thom Brown Cc: Schmitz, David; Andres Freund; pgsql-performance@postgresql.org Betreff: Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1 On 8/12/2009 6:11 PM, Thom Brown wrote: Your output shows that the xdf_admin_hierarchy

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Robert Haas
On Tue, Dec 8, 2009 at 7:12 AM, Craig Ringer cr...@postnewspapers.com.au wrote: On 8/12/2009 6:11 PM, Thom Brown wrote: Your output shows that the xdf_admin_hierarchy tables between versions are drastically different.  8.3.8 only contains 1 row, whereas 8.4.1 contains 84211 rows. That's

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Robert Haas
On Tue, Dec 8, 2009 at 8:27 AM, Schmitz, David david.schm...@harman.com wrot that is exactly the problem postgresql 8.4.1 does not consider the primary key but instead calculates a hash join. This can only result in poorer performance. I think this is a bug. Your statement that this can

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Tom Lane
Robert Haas robertmh...@gmail.com writes: I can think of a couple of possible explanations for the behavior you're seeing: The reason it's switching from a nestloop to something else is pretty obvious: the estimate of the number of rows coming out of the lower join has gone from 81 to 60772.

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-08 Thread Robert Haas
On Tue, Dec 8, 2009 at 11:07 AM, Schmitz, David david.schm...@harman.com wrote: So how should we proceed with this issue? I think Tom nailed it. ...Robert -- Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org) To make changes to your subscription:

[PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-07 Thread Schmitz, David
Hello everybody, we have severe performance penalty between Postgresql 8.3.8 and 8.4.1 Consider the following tables: CREATE TABLE xdf.xdf_admin_hierarchy ( admin_place_id integer NOT NULL, admin_order smallint NOT NULL, iso_country_code character(3) NOT NULL, country_id integer NOT

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-07 Thread Kevin Grittner
Schmitz, David david.schm...@harman.com wrote: It is carried out with poor performance on postgresql 8.4.1 However postgresql 8.3.8 performs just fine. If you take a closer look at the query with EXPLAIN, it becomes obvious, that postgresql 8.4 does not consider the primary key at level 3

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-07 Thread Schmitz, David
-Ursprüngliche Nachricht- Von:Schmitz, David Gesendet: Di 08.12.2009 00:14 An: Kevin Grittner Cc: Betreff:AW: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1 -Ursprüngliche Nachricht- Von:Kevin Grittner [mailto:kevin.gritt

Re: [PERFORM] performance penalty between Postgresql 8.3.8 and 8.4.1

2009-12-07 Thread Robert Haas
On Mon, Dec 7, 2009 at 5:19 PM, Kevin Grittner kevin.gritt...@wicourts.gov wrote: Schmitz, David david.schm...@harman.com wrote: It is carried out with poor performance on postgresql 8.4.1 However postgresql 8.3.8 performs just fine. If you take a closer look at the query with EXPLAIN, it