Re: [HACKERS] Re: Number of parameters in a sql function - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: [HACKERS] Re: Number of parameters in a sql function
Date
Msg-id 199905091602.MAA23219@candle.pha.pa.us
Whole thread Raw
In response to Re: Number of parameters in a sql function  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [HACKERS] Re: Number of parameters in a sql function  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Looks like this was fixed, because we now generate an error:

test=> create function klasd (int, int, int, int, int, int, int, int,
int) returns int as 'asdf' language 'c';
ERROR:  Procedures cannot take more than 8 arguments


> "Stan Ng" <stan@squaresoft.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
> 
> 


--  Bruce Momjian                        |  http://www.op.net/~candle maillist@candle.pha.pa.us            |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [HACKERS] Re: SIGBUS in AllocSetAlloc & jdbc
Next
From: Bruce Momjian
Date:
Subject: Re: [HACKERS] Niladic functions