On 7/10/08, Pavel Stehule <[EMAIL PROTECTED]> wrote:
>  I am sending actualized patch
>
>  Regards
>  Pavel Stehule
>
>  2008/7/9 Pavel Stehule <[EMAIL PROTECTED]>:
>
> > 2008/7/9 Marko Kreen <[EMAIL PROTECTED]>:
>  >> Generally, the patch looks fine.  There are few issues still:
>  >>
>  >> - plpgsql: the result columns _do_ create local variables.
>  >>  AIUI, they should not?
>  >
>  > it was my mistake - it doesn't do local variables - fixed
>  >>
>  >> - pg_dump: is the psql_assert() introduction necessary, considering it
>  >>  is used only in one place?
>  >
>  > removed - argmode variables is checked before
>  >>
>  >> - There should be regression test for plpgsql too, that test if
>  >>  the behaviour is correct.
>  >>
>  >
>  > addeded
>  >> - The documentation should mention behaviour difference from OUT
>  >>  parameters.
>  >
>  > I will do it.
>  >>
>  >> Wishlist (probably out of scope for this patch):
>  >
>  > this is in my wishlist too, but postgresql doesn't support types like
>  > result of functions.
>  >>
>  >> - plpgsql: a way to create record variable for result row.  Something 
> like:
>  >>
>  >>    CREATE FUNCTION foo(..) RETURNS TABLE (..) AS $$
>  >>    DECLARE
>  >>       retval   foo%ROWTYPE;
>  >>
>  >>
>  >>  Currently the OUT parameters are quite painful to use due to bad
>  >>  name resolving logic.  Such feature would be perfect replacement.
>  >>
>  >> --
>  >> marko
>  >>
>  > I'll send patch early, thank you much

Ok, last items:

- Attached is a patch that fixes couple C comments.

- I think plpgsql 38.1.2 chapter of "Supported Argument and Result Data
  Types" should also have a mention of TABLE functions.

Then I'm content with the patch.

-- 
marko
diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c
index 3f90c93..6ae4521 100644
--- a/src/bin/pg_dump/pg_dump.c
+++ b/src/bin/pg_dump/pg_dump.c
@@ -6847,7 +6847,7 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
 
 	appendPQExpBuffer(q, "CREATE FUNCTION %s ", funcsig);
 
-	/* swich between RETURNS SETOF RECORD and RETURNS TABLE functions */
+	/* switch between RETURNS SETOF RECORD and RETURNS TABLE functions */
 	if (!is_returns_table_function(nallargs, argmodes))
 	{
 		rettypename = getFormattedTypeName(finfo->prorettype, zeroAsOpaque);
diff --git a/src/pl/plpgsql/src/pl_comp.c b/src/pl/plpgsql/src/pl_comp.c
index 612a84f..c683aea 100644
--- a/src/pl/plpgsql/src/pl_comp.c
+++ b/src/pl/plpgsql/src/pl_comp.c
@@ -402,7 +402,7 @@ do_compile(FunctionCallInfo fcinfo,
 				PLpgSQL_variable *argvariable;
 				int			argitemtype;
 
-				/* skip PROARGMODE_TABLE params - these params hasn't local variables */
+				/* PROARGMODE_TABLE params should not create local variables */
 				if (argmode == PROARGMODE_TABLE)
 					continue;
 
-- 
Sent via pgsql-patches mailing list (pgsql-patches@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-patches

Reply via email to