@ -12,7 +12,7 @@
* by PostgreSQL
*
* IDENTIFICATION
* $ PostgreSQL : pgsql / src / bin / pg_dump / pg_dump . c , v 1.509 2008 / 12 / 19 16 : 25 : 18 petere Exp $
* $ PostgreSQL : pgsql / src / bin / pg_dump / pg_dump . c , v 1.51 0 2008 / 12 / 31 02 : 25 : 05 tgl Exp $
*
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
@ -6916,6 +6916,7 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
char * proallargtypes ;
char * proargmodes ;
char * proargnames ;
char * proiswindow ;
char * provolatile ;
char * proisstrict ;
char * prosecdef ;
@ -6956,7 +6957,7 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
" pg_catalog.pg_get_function_arguments(oid) as funcargs, "
" pg_catalog.pg_get_function_identity_arguments(oid) as funciargs, "
" pg_catalog.pg_get_function_result(oid) as funcresult, "
" provolatile, proisstrict, prosecdef, "
" proiswindow, pro volatile, proisstrict, prosecdef, "
" proconfig, procost, prorows, "
" (SELECT lanname FROM pg_catalog.pg_language WHERE oid = prolang) as lanname "
" FROM pg_catalog.pg_proc "
@ -6968,6 +6969,7 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
appendPQExpBuffer ( query ,
" SELECT proretset, prosrc, probin, "
" proallargtypes, proargmodes, proargnames, "
" false as proiswindow, "
" provolatile, proisstrict, prosecdef, "
" proconfig, procost, prorows, "
" (SELECT lanname FROM pg_catalog.pg_language WHERE oid = prolang) as lanname "
@ -6980,6 +6982,7 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
appendPQExpBuffer ( query ,
" SELECT proretset, prosrc, probin, "
" proallargtypes, proargmodes, proargnames, "
" false as proiswindow, "
" provolatile, proisstrict, prosecdef, "
" null as proconfig, 0 as procost, 0 as prorows, "
" (SELECT lanname FROM pg_catalog.pg_language WHERE oid = prolang) as lanname "
@ -6994,6 +6997,7 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
" null as proallargtypes, "
" null as proargmodes, "
" proargnames, "
" false as proiswindow, "
" provolatile, proisstrict, prosecdef, "
" null as proconfig, 0 as procost, 0 as prorows, "
" (SELECT lanname FROM pg_catalog.pg_language WHERE oid = prolang) as lanname "
@ -7008,6 +7012,7 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
" null as proallargtypes, "
" null as proargmodes, "
" null as proargnames, "
" false as proiswindow, "
" provolatile, proisstrict, prosecdef, "
" null as proconfig, 0 as procost, 0 as prorows, "
" (SELECT lanname FROM pg_catalog.pg_language WHERE oid = prolang) as lanname "
@ -7022,9 +7027,10 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
" null as proallargtypes, "
" null as proargmodes, "
" null as proargnames, "
" false as proiswindow, "
" case when proiscachable then 'i' else 'v' end as provolatile, "
" proisstrict, "
" 'f'::boolean as prosecdef, "
" false as prosecdef, "
" null as proconfig, 0 as procost, 0 as prorows, "
" (SELECT lanname FROM pg_language WHERE oid = prolang) as lanname "
" FROM pg_proc "
@ -7038,9 +7044,10 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
" null as proallargtypes, "
" null as proargmodes, "
" null as proargnames, "
" false as proiswindow, "
" case when proiscachable then 'i' else 'v' end as provolatile, "
" 'f'::boolean as proisstrict, "
" 'f'::boolean as prosecdef, "
" false as proisstrict, "
" false as prosecdef, "
" null as proconfig, 0 as procost, 0 as prorows, "
" (SELECT lanname FROM pg_language WHERE oid = prolang) as lanname "
" FROM pg_proc "
@ -7077,6 +7084,7 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
proargnames = PQgetvalue ( res , 0 , PQfnumber ( res , " proargnames " ) ) ;
funcargs = funciargs = funcresult = NULL ;
}
proiswindow = PQgetvalue ( res , 0 , PQfnumber ( res , " proiswindow " ) ) ;
provolatile = PQgetvalue ( res , 0 , PQfnumber ( res , " provolatile " ) ) ;
proisstrict = PQgetvalue ( res , 0 , PQfnumber ( res , " proisstrict " ) ) ;
prosecdef = PQgetvalue ( res , 0 , PQfnumber ( res , " prosecdef " ) ) ;
@ -7217,6 +7225,10 @@ dumpFunc(Archive *fout, FuncInfo *finfo)
}
appendPQExpBuffer ( q , " \n LANGUAGE %s " , fmtId ( lanname ) ) ;
if ( proiswindow [ 0 ] = = ' t ' )
appendPQExpBuffer ( q , " WINDOW " ) ;
if ( provolatile [ 0 ] ! = PROVOLATILE_VOLATILE )
{
if ( provolatile [ 0 ] = = PROVOLATILE_IMMUTABLE )