Thread: views much slower in 9.3 than 8.4

views much slower in 9.3 than 8.4

From
"Carson, Leonard"
Date:
We have views that run from 20x to failing to complete at all in 9.4.1 whereas they finished in seconds in 8.4.7 on the
sameplatform. 

After upgrading from 8.4 to 9.4, I ran ANALYZE on the entire DB.  Performance improved for some but not all of the
views.

Here is the explain-analyze output from one of the slow views in 9.4:
http://explain.depesz.com/s/36n

Unfortunately I have no way of producing an 8.4 plan.

While acknowledging that nested loops and sequential table scans account for 85% of the execution time which suggests
thata better query may be needed, why would the same query run in seconds on 8.x but take minutes on 9.x?    

Did the planner change significantly between the two releases?   Is there any way to compel the 9.4 planner to produce
an8.4 plan?   

Thanks in advance for you assistance.




Re: views much slower in 9.3 than 8.4

From
Kevin Grittner
Date:
"Carson, Leonard" <lcarson@sdsc.edu> wrote:

> While acknowledging that nested loops and sequential table scans
> account for 85% of the execution time which suggests that a
> better query may be needed, why would the same query run in
> seconds on 8.x but take minutes on 9.x?

First, please show the output of this from both servers:

SELECT version();
SELECT name, current_setting(name), source
FROM pg_settings
WHERE source NOT IN ('default', 'override');

Then, for your newer server, please follow the steps outlined here:

https://wiki.postgresql.org/wiki/SlowQueryQuestions

My first guess would be that at some point your costing parameters
were tuned on the old system, but have not yet been tuned on the
new one.  Rather than blindly using the old settings for the new
server, it would be good to see the information requested on the
above-cited page to determine good settings for the new server.

--
Kevin Grittner
EDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company