Thread: Some functions with variadics don't show the right CREATE FUNCTION SQL

Some functions with variadics don't show the right CREATE FUNCTION SQL

From
"Paragon Corporation"
Date:
We discovered a recent issue on PostGIS dev which we think is a pgAdmin issue.  We have reproduced on 1.14 and 1.10
 
That is when we create  a function like this:
 
CREATE OR REPLACE FUNCTION test_regprocedure(	func regprocedure,	VARIADIC junk text[] DEFAULT NULL
)
RETURNS text AS $$
BEGIN	RETURN NULL;
END;
$$ LANGUAGE 'plpgsql';
 
It shows this in the function window

CREATE OR REPLACE FUNCTION public.test_regprocedure(IN func regprocedure DEFAULT NULL::text[], VARIADIC junk text[])
  RETURNS text AS
$BODY$
BEGIN
 RETURN NULL;
END;
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;
ALTER FUNCTION public.test_regprocedure(regprocedure, text[])
  OWNER TO postgres;
 
We have this as a ticketed item which we have closed on our end.
Please refer to :
http://trac.osgeo.org/postgis/ticket/1283
 
If you need further details.
 
Thanks,
Regina

Re: Some functions with variadics don't show the right CREATE FUNCTION SQL

From
Guillaume Lelarge
Date:
On Mon, 2011-11-21 at 17:55 -0500, Paragon Corporation wrote:
> We discovered a recent issue on PostGIS dev which we think is a pgAdmin
> issue.  We have reproduced on 1.14 and 1.10
>  
> That is when we create  a function like this:
>  
> CREATE OR REPLACE FUNCTION test_regprocedure(
> 
>     func regprocedure,
> 
>     VARIADIC junk text[] DEFAULT NULL
> 
> )
> 
> RETURNS text AS $$
> 
> BEGIN
> 
>     RETURN NULL;
> 
> END;
> 
> $$ LANGUAGE 'plpgsql';
>  
> It shows this in the function window
> 
> CREATE OR REPLACE FUNCTION public.test_regprocedure(IN func regprocedure
> DEFAULT NULL::text[], VARIADIC junk text[])
>   RETURNS text AS
> $BODY$
> BEGIN
>  RETURN NULL;
> END;
> $BODY$
>   LANGUAGE plpgsql VOLATILE
>   COST 100;
> ALTER FUNCTION public.test_regprocedure(regprocedure, text[])
>   OWNER TO postgres;
> 
>  
> We have this as a ticketed item which we have closed on our end.
> Please refer to :
> http://trac.osgeo.org/postgis/ticket/1283
>  
> If you need further details.
>  

I reproduced the issue last weekend. I probably won't have time to work
on it before next weekend.


-- 
Guillaume http://blog.guillaume.lelarge.info http://www.dalibo.com



Re: Some functions with variadics don't show the right CREATE FUNCTION SQL

From
Guillaume Lelarge
Date:
On Tue, 2011-11-22 at 22:49 +0100, Guillaume Lelarge wrote:
> On Mon, 2011-11-21 at 17:55 -0500, Paragon Corporation wrote:
> > We discovered a recent issue on PostGIS dev which we think is a pgAdmin
> > issue.  We have reproduced on 1.14 and 1.10
> >  
> > That is when we create  a function like this:
> >  
> > CREATE OR REPLACE FUNCTION test_regprocedure(
> > 
> >     func regprocedure,
> > 
> >     VARIADIC junk text[] DEFAULT NULL
> > 
> > )
> > 
> > RETURNS text AS $$
> > 
> > BEGIN
> > 
> >     RETURN NULL;
> > 
> > END;
> > 
> > $$ LANGUAGE 'plpgsql';
> >  
> > It shows this in the function window
> > 
> > CREATE OR REPLACE FUNCTION public.test_regprocedure(IN func regprocedure
> > DEFAULT NULL::text[], VARIADIC junk text[])
> >   RETURNS text AS
> > $BODY$
> > BEGIN
> >  RETURN NULL;
> > END;
> > $BODY$
> >   LANGUAGE plpgsql VOLATILE
> >   COST 100;
> > ALTER FUNCTION public.test_regprocedure(regprocedure, text[])
> >   OWNER TO postgres;
> > 
> >  
> > We have this as a ticketed item which we have closed on our end.
> > Please refer to :
> > http://trac.osgeo.org/postgis/ticket/1283
> >  
> > If you need further details.
> >  
> 
> I reproduced the issue last weekend. I probably won't have time to work
> on it before next weekend.
> 

So, you were right on this one too. The bug occured only with VARIADIC
argument. It is now fixed. Unfortunately, it won't make it for 1.14.1,
but will definitely be available with 1.14.2.

Thanks for your report, and sorry for the delay.


-- 
Guillaume http://blog.guillaume.lelarge.info http://www.dalibo.com