Thread: Cannot Create plpqsql function!

Cannot Create plpqsql function!

From
"asreddy"
Date:
Using postgresql 6.5.2 on RedHat linux 6.1. Getting the following error whi=
le creating function:

ERROR:  Procedures cannot take more than 8 arguments

Any pointers? Do not tell me to go for version 7. I may not have that time =
to go for a change.

Thanks=20
--Siva

Re: Cannot Create plpqsql function!

From
Thomas Lockhart
Date:
> Using postgresql 6.5.2 on RedHat linux 6.1. Getting the following
> error while creating function:
> ERROR:  Procedures cannot take more than 8 arguments
> Any pointers? Do not tell me to go for version 7. I may not have that
> time to go for a change.

You have two choices:
1) do the Thing Which Cannot Be Mentioned, or
2) stop trying to create functions with more than 8 arguments

PostgreSQL (at least for 6.5.x) had an 8-member array defined to hold
function arguments, and afaik it is a hard upper limit. Much easier to
do (1) than to try to recode the 6.5.x backend to accomodate it.

                    - Thomas

Re: Cannot Create plpqsql function!

From
Andrew McMillan
Date:
> asreddy wrote:
>
> Using postgresql 6.5.2 on RedHat linux 6.1. Getting the following error while
> creating function:
>
> ERROR:  Procedures cannot take more than 8 arguments
>
> Any pointers? Do not tell me to go for version 7. I may not have that time to go
> for a change.

Make one of your arguments a text string containing multiple of your real
arguments.  Inside your function split it up into it's original constituents.

You should be on 7.x though.  Really.

Cheers,
                    Andrew.
--
_____________________________________________________________________
           Andrew McMillan, e-mail: Andrew@catalyst.net.nz
Catalyst IT Ltd, PO Box 10-225, Level 22, 105 The Terrace, Wellington
Me: +64 (21) 635 694, Fax: +64 (4) 499 5596, Office: +64 (4) 499 2267