Re: Number of parameters in a sql function

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-sql(at)hub(dot)org
Cc: pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: Number of parameters in a sql function
Date: 1999-03-06 17:20:49
Message-ID: 4179.920740849@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-sql

"Stan Ng" <stan(at)squaresoft(dot)com> writes:
> I'm running into a limit problem with CREATE FUNCTION. Whenever I exceed
> the limit on parameters, somewhere around 12 for me, psql bombs on me
> with the "pqReadData() -- backend closed the channel unexpectedly" error
> message. Is there any way to increase the parameter limit for
> functions?

It shouldn't be letting you get that high; the system limit is 8
parameters for a function. (It looks to me like parse_func.c should
be, but is failing to, verify that the length of the parameter lists
it is passed are within bounds --- or else gram.y itself should complain
if the list is overlength.)

Increasing the limit would be rather a major project I suspect.
A quick look around the sources found a lot of dependencies, some
being symbolic constants (not all the same one :-() and some being
hard coded "8"s. Ick. Also, you would certainly be facing an initdb
and database reload, because the number of argument-type columns in
pg_proc would have to increase.

It'd be good to clean this up and replace pg_proc's fixed-size
proargtypes column with a variable-size "array of oid" column.
Any volunteers?

regards, tom lane

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message The Hermit Hacker 1999-03-06 20:28:28 a "bug" in v6.4.3 ...
Previous Message Tom Lane 1999-03-06 16:42:05 Re: [HACKERS] Why is that so slow?

Browse pgsql-sql by date

  From Date Subject
Next Message Bruce Momjian 1999-03-07 03:26:56 Re: [SQL] 6.4.x to 6.5
Previous Message Tom Lane 1999-03-06 16:54:46 Re: [SQL] CREATE TABLE (fwd ): again!