Re: [HACKERS] Re: Number of parameters in a sql function

From: Bruce Momjian <maillist(at)candle(dot)pha(dot)pa(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSQL-development <hackers(at)postgreSQL(dot)org>
Subject: Re: [HACKERS] Re: Number of parameters in a sql function
Date: 1999-05-09 16:02:40
Message-ID: 199905091602.MAA23219@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-sql

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(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
>
>

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

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 1999-05-09 16:03:57 Re: [HACKERS] Niladic functions
Previous Message Tom Lane 1999-05-09 15:53:01 Re: [HACKERS] Re: SIGBUS in AllocSetAlloc & jdbc

Browse pgsql-sql by date

  From Date Subject
Next Message Tom Lane 1999-05-09 16:58:13 Re: [HACKERS] Re: INSERT/UPDATE waiting (another example)
Previous Message Herouth Maoz 1999-05-09 14:39:12 Re: [SQL] TRANSLATE()