Re: UDF in C slow

From: Alban Hertroys <haramrae(at)gmail(dot)com>
To: Inanc Seylan <inanc(dot)seylan(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: UDF in C slow
Date: 2012-05-11 14:21:35
Message-ID: CAF-3MvNt+9yd0VvDnXTV5Y3gNERgZUPtd0HCFk=xRvCijLfFVA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 11 May 2012 15:57, Inanc Seylan <inanc(dot)seylan(at)gmail(dot)com> wrote:
> Hi all,
>
> I have implemented a user-defined function in C that returns a boolean value
> after some computation. Now I have a query Q such that when I specify the
> function in the WHERE clause of Q, Q runs in 40 secs and if I don't use the
> function it runs in 4 secs. Then I thought that my implementation of this
> function could be slow; so I decided to write a very simple function that
> just returns true without any computation. To my surprise, it also takes
> around 40 seconds to run Q with the new very simple function. Does anybody
> have a clue about what might be going wrong?

Is that a VOLATILE, STABLE or IMMUTABLE function? What's the output of
EXPLAIN ANALYZE?
--
If you can't see the forest for the trees,
Cut the trees and you'll see there is no forest.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Inanc Seylan 2012-05-11 14:39:50 Re: UDF in C slow
Previous Message Pavel Stehule 2012-05-11 14:17:49 Re: avoiding CONTEXT messages