From: | "David E(dot) Wheeler" <david(at)kineticode(dot)com> |
---|---|
To: | Tim Bunce <Tim(dot)Bunce(at)pobox(dot)com> |
Cc: | Greg Sabino Mullane <greg(at)endpoint(dot)com>, Richard Huxton <dev(at)archonet(dot)com>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: PostgreSQL::PLPerl::Call - Simple interface for calling SQL functions from PostgreSQL PL/Perl |
Date: | 2010-02-16 22:13:30 |
Message-ID: | D46815C7-F165-4D80-8C93-688D6896BBF1@kineticode.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Feb 16, 2010, at 2:06 PM, Tim Bunce wrote:
>> I assume that type names can be omitted her, too, yes?
>
> No, it seems not. You have to either repeat the type name the right number
> of times, or use '...', which simply duplicates the type name for you
> behind the scenes. I'll clarify that in the docs (and fix all the
> places I spelt variadic wrong :)
Pity.
> SP->"schema.func"() doesn't work. ($name="schema.func"; SP->$name() works.)
Ha! Document that.
>>> For varadic functions, separate plans are created and cached for each distinct
>>> number of arguments the function is called with.
>>
>> Why?
>
> It keeps the code simple and repeat calls fast.
Yes, but if it's a variadic function, I suspect that it won't often be called with the same number of args. So you'd potentially end up caching a lot of extra stuff that would never be used again.
> I found it in the docs: "A parameter marked VARIADIC matches *one* or
> more occurrences of its element type".
> http://www.postgresql.org/docs/8.4/interactive/xfunc-sql.html
Ah, okay, that makes sense.
>> So, is this on GitHub yet? That way I can submit patches.
>
> I've uploaded PostgreSQL-PLPerl-Call-1.003.tar.gz to CPAN with these
> changes. It's in git but not github yet. Maybe soonish.
I saw. I think it might pay to heed Richard's suggestion not to use "SP".
By the way, I think it needs some documentation explaining how to load it inside PL/Perl.
Best,
David
From | Date | Subject | |
---|---|---|---|
Next Message | Tim Bunce | 2010-02-16 22:19:39 | Re: CommitFest Status Summary - 2010-02-14 |
Previous Message | Tim Bunce | 2010-02-16 22:06:00 | Re: PostgreSQL::PLPerl::Call - Simple interface for calling SQL functions from PostgreSQL PL/Perl |