Fix for recusive exit call from Massimo.
This commit is contained in:
parent
32edd98519
commit
17d819c093
@ -7,7 +7,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/storage/ipc/ipc.c,v 1.40 1999/10/10 16:53:51 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/storage/ipc/ipc.c,v 1.41 1999/11/06 17:01:28 momjian Exp $
|
||||
*
|
||||
* NOTES
|
||||
*
|
||||
@ -115,14 +115,13 @@ proc_exit(int code)
|
||||
TPRINTF(TRACE_VERBOSE, "proc_exit(%d) [#%d]", code, proc_exit_inprogress);
|
||||
|
||||
/*
|
||||
* If proc_exit is called too many times something bad is happenig, so
|
||||
* exit immediately.
|
||||
* If proc_exit is called too many times something bad is happening, so
|
||||
* exit immediately. This is crafted in two if's for a reason.
|
||||
*/
|
||||
if (proc_exit_inprogress > 9)
|
||||
{
|
||||
if (proc_exit_inprogress == 9)
|
||||
elog(ERROR, "infinite recursion in proc_exit");
|
||||
if (proc_exit_inprogress >= 9)
|
||||
goto exit;
|
||||
}
|
||||
|
||||
/* ----------------
|
||||
* if proc_exit_inprocess is true, then it means that we
|
||||
|
@ -14,10 +14,6 @@ struct _helpStruct
|
||||
|
||||
|
||||
static struct _helpStruct QL_HELP[] = {
|
||||
{ "TRUNCATE",
|
||||
"Empty a table",
|
||||
"TRUNCATE [ TABLE ] name" },
|
||||
|
||||
{ "ABORT",
|
||||
"Aborts the current transaction",
|
||||
"ABORT [ WORK | TRANSACTION ]" },
|
||||
@ -42,6 +38,10 @@ static struct _helpStruct QL_HELP[] = {
|
||||
"Gives storage clustering advice to the server",
|
||||
"CLUSTER indexname ON table" },
|
||||
|
||||
{ "COMMENT",
|
||||
"Add comment to an object",
|
||||
"COMMENT ON\n[\n [ DATABASE | INDEX | RULE | SEQUENCE | TABLE | TYPE | VIEW ]\n object_name |\n COLUMN table_name.column_name|\n AGGREGATE agg_name agg_type|\n FUNCTION func_name (arg1, arg2, ...)|\n OPERATOR op (leftoperand_type rightoperand_type) |\n TRIGGER trigger_name ON table_name\n] IS 'text'" },
|
||||
|
||||
{ "COMMIT",
|
||||
"Commits the current transaction",
|
||||
"COMMIT [ WORK | TRANSACTION ]" },
|
||||
@ -118,10 +118,6 @@ static struct _helpStruct QL_HELP[] = {
|
||||
"Removes the definition of an aggregate function",
|
||||
"DROP AGGREGATE name type" },
|
||||
|
||||
{ "FETCH",
|
||||
"Gets rows using a cursor",
|
||||
"FETCH [ selector ] [ count ] { IN | FROM } cursor\nFETCH [ RELATIVE ] [ { [ # | ALL | NEXT | PRIOR ] } ] FROM ] cursor" },
|
||||
|
||||
{ "DROP DATABASE",
|
||||
"Destroys an existing database",
|
||||
"DROP DATABASE name" },
|
||||
@ -170,10 +166,18 @@ static struct _helpStruct QL_HELP[] = {
|
||||
"Removes an existing view from a database",
|
||||
"DROP VIEW name" },
|
||||
|
||||
{ "END",
|
||||
"Commits the current transaction",
|
||||
"END [ WORK | TRANSACTION ]" },
|
||||
|
||||
{ "EXPLAIN",
|
||||
"Shows statement execution details",
|
||||
"EXPLAIN [ VERBOSE ] query" },
|
||||
|
||||
{ "FETCH",
|
||||
"Gets rows using a cursor",
|
||||
"FETCH [ selector ] [ count ] { IN | FROM } cursor\nFETCH [ RELATIVE ] [ { [ # | ALL | NEXT | PRIOR ] } ] FROM ] cursor" },
|
||||
|
||||
{ "GRANT",
|
||||
"Grants access privilege to a user, a group or all users",
|
||||
"GRANT privilege [, ...] ON object [, ...]\n TO { PUBLIC | GROUP group | username }" },
|
||||
@ -230,6 +234,10 @@ static struct _helpStruct QL_HELP[] = {
|
||||
"Shows run-time parameters for session",
|
||||
"SHOW keyword" },
|
||||
|
||||
{ "TRUNCATE",
|
||||
"Empty a table",
|
||||
"TRUNCATE [ TABLE ] name" },
|
||||
|
||||
{ "UNLISTEN",
|
||||
"Stop listening for notification",
|
||||
"UNLISTEN { notifyname | * }" },
|
||||
@ -242,14 +250,6 @@ static struct _helpStruct QL_HELP[] = {
|
||||
"Clean and analyze a Postgres database",
|
||||
"VACUUM [ VERBOSE ] [ ANALYZE ] [ table ]\nVACUUM [ VERBOSE ] ANALYZE [ ER\">tBLE> [ (column [, ...] ) ] ]" },
|
||||
|
||||
{ "END",
|
||||
"Commits the current transaction",
|
||||
"END [ WORK | TRANSACTION ]" },
|
||||
|
||||
{ "COMMENT",
|
||||
"Add comment to an object",
|
||||
"COMMENT ON\n[\n [ DATABASE | INDEX | RULE | SEQUENCE | TABLE | TYPE | VIEW ]\n object_name |\n COLUMN table_name.column_name|\n AGGREGATE agg_name agg_type|\n FUNCTION func_name (arg1, arg2, ...)|\n OPERATOR op (leftoperand_type rightoperand_type) |\n TRIGGER trigger_name ON table_name\n] IS 'text'" },
|
||||
|
||||
|
||||
{ NULL, NULL, NULL } /* End of list marker */
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user