Re: Query timing increased from 3s to 55s when used as a function instead of select - Mailing list pgsql-performance

From Tyler Hildebrandt
Subject Re: Query timing increased from 3s to 55s when used as a function instead of select
Date
Msg-id 20100525134100.GA25592@campbell-lange.net
Whole thread Raw
In response to Re: Query timing increased from 3s to 55s when used as a function instead of select  ("A. Kretschmer" <andreas.kretschmer@schollglas.com>)
Responses Re: Query timing increased from 3s to 55s when used as a function instead of select  (Merlin Moncure <mmoncure@gmail.com>)
List pgsql-performance
> I think, your problem is here:
>
> SELECT INTO current_user * FROM
> fn_medirota_validate_rota_master(in_currentuser);
>
>
> The planner has no knowledge about how many rows this functions returns
> if he don't know the actual parameter. Because of this, this query
> enforce a seq-scan. Try to rewrite that to something like:
>
> execute 'select * from fn_medirota_validate_rota_master(' ||
> in_currentuser' || ')' into current_user
>

Thanks for your response.  This doesn't seem to solve our issue, unfortunately.

As a side to that, we have the fn_medirota_validate_rota_master calls in a
large amount of our other functions that are running very well.

--
Tyler Hildebrandt
Software Developer
tyler@campbell-lange.net

Campbell-Lange Workshop
www.campbell-lange.net
020 7631 1555
3 Tottenham Street London W1T 2AF
Registered in England No. 04551928

pgsql-performance by date:

Previous
From: Andres Freund
Date:
Subject: Re: performance of temporary vs. regular tables
Next
From: Juan Pablo Sandoval Rivera
Date:
Subject: tunning pgsql 7.3.7 over RHEL 4.0 32 x86 (2.6.9-5ELsmp)