Fix for recusive exit call from Massimo.

This commit is contained in:
Bruce Momjian 1999-11-06 17:01:29 +00:00
parent 32edd98519
commit 17d819c093
2 changed files with 21 additions and 22 deletions

View File

@ -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

View File

@ -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 */
};