Improve error message for erroneous use of 'opaque' as plperl argument
or return type.
This commit is contained in:
parent
6e646c7313
commit
8d7c0851a3
@ -33,7 +33,7 @@
|
|||||||
* ENHANCEMENTS, OR MODIFICATIONS.
|
* ENHANCEMENTS, OR MODIFICATIONS.
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/pl/plperl/plperl.c,v 1.16 2000/11/20 20:36:51 tgl Exp $
|
* $Header: /cvsroot/pgsql/src/pl/plperl/plperl.c,v 1.17 2000/12/08 00:11:55 tgl Exp $
|
||||||
*
|
*
|
||||||
**********************************************************************/
|
**********************************************************************/
|
||||||
|
|
||||||
@ -545,8 +545,12 @@ plperl_func_handler(PG_FUNCTION_ARGS)
|
|||||||
{
|
{
|
||||||
free(prodesc->proname);
|
free(prodesc->proname);
|
||||||
free(prodesc);
|
free(prodesc);
|
||||||
elog(ERROR, "plperl: cache lookup for return type %u failed",
|
if (!OidIsValid(procStruct->prorettype))
|
||||||
procStruct->prorettype);
|
elog(ERROR, "plperl functions cannot return type \"opaque\""
|
||||||
|
"\n\texcept when used as triggers");
|
||||||
|
else
|
||||||
|
elog(ERROR, "plperl: cache lookup for return type %u failed",
|
||||||
|
procStruct->prorettype);
|
||||||
}
|
}
|
||||||
typeStruct = (Form_pg_type) GETSTRUCT(typeTup);
|
typeStruct = (Form_pg_type) GETSTRUCT(typeTup);
|
||||||
|
|
||||||
@ -577,8 +581,11 @@ plperl_func_handler(PG_FUNCTION_ARGS)
|
|||||||
{
|
{
|
||||||
free(prodesc->proname);
|
free(prodesc->proname);
|
||||||
free(prodesc);
|
free(prodesc);
|
||||||
elog(ERROR, "plperl: cache lookup for argument type %u failed",
|
if (!OidIsValid(procStruct->proargtypes[i]))
|
||||||
procStruct->proargtypes[i]);
|
elog(ERROR, "plperl functions cannot take type \"opaque\"");
|
||||||
|
else
|
||||||
|
elog(ERROR, "plperl: cache lookup for argument type %u failed",
|
||||||
|
procStruct->proargtypes[i]);
|
||||||
}
|
}
|
||||||
typeStruct = (Form_pg_type) GETSTRUCT(typeTup);
|
typeStruct = (Form_pg_type) GETSTRUCT(typeTup);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user