aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/misc
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2010-07-20 00:47:53 +0000
committerRobert Haas <rhaas@postgresql.org>2010-07-20 00:47:53 +0000
commit5ffaa9005c451330bcde29d11a9385c0900ee707 (patch)
tree0e33f0f8054bd0523f7142a057e38569f11957e8 /src/backend/utils/misc
parent0839f312e92c7ab0aecb2c4133197a7da7c5fc39 (diff)
downloadpostgresql-5ffaa9005c451330bcde29d11a9385c0900ee707.tar.gz
postgresql-5ffaa9005c451330bcde29d11a9385c0900ee707.zip
Add restart_after_crash GUC.
Normally, we automatically restart after a backend crash, but in some cases when PostgreSQL is invoked by clusterware it may be desirable to suppress this behavior, so we provide an option which does this. Since no existing GUC group quite fits, create a new group called "error handling options" for this and the previously undocumented GUC exit_on_error, which is now documented. Review by Fujii Masao.
Diffstat (limited to 'src/backend/utils/misc')
-rwxr-xr-xsrc/backend/utils/misc/check_guc2
-rw-r--r--src/backend/utils/misc/guc.c22
-rw-r--r--src/backend/utils/misc/postgresql.conf.sample8
3 files changed, 25 insertions, 7 deletions
diff --git a/src/backend/utils/misc/check_guc b/src/backend/utils/misc/check_guc
index df597b4879a..5152b4e929d 100755
--- a/src/backend/utils/misc/check_guc
+++ b/src/backend/utils/misc/check_guc
@@ -16,7 +16,7 @@
## if an option is valid but shows up in only one file (guc.c but not
## postgresql.conf.sample), it should be listed here so that it
## can be ignored
-INTENTIONALLY_NOT_INCLUDED="autocommit debug_deadlocks exit_on_error \
+INTENTIONALLY_NOT_INCLUDED="autocommit debug_deadlocks \
is_superuser lc_collate lc_ctype lc_messages lc_monetary lc_numeric lc_time \
pre_auth_delay role seed server_encoding server_version server_version_int \
session_authorization trace_lock_oidmin trace_lock_table trace_locks trace_lwlocks \
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 7a28594e338..9cc24237f8c 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -10,7 +10,7 @@
* Written by Peter Eisentraut <peter_e@gmx.net>.
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.563 2010/07/20 00:34:44 rhaas Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.564 2010/07/20 00:47:53 rhaas Exp $
*
*--------------------------------------------------------------------
*/
@@ -550,6 +550,8 @@ const char *const config_group_names[] =
gettext_noop("Version and Platform Compatibility / Previous PostgreSQL Versions"),
/* COMPAT_OPTIONS_CLIENT */
gettext_noop("Version and Platform Compatibility / Other Platforms and Clients"),
+ /* ERROR_HANDLING */
+ gettext_noop("Error Handling"),
/* PRESET_OPTIONS */
gettext_noop("Preset Options"),
/* CUSTOM_OPTIONS */
@@ -813,17 +815,25 @@ static struct config_bool ConfigureNamesBool[] =
#endif
assign_debug_assertions, NULL
},
+
{
- /* currently undocumented, so don't show in SHOW ALL */
- {"exit_on_error", PGC_USERSET, UNGROUPED,
- gettext_noop("No description available."),
- NULL,
- GUC_NO_SHOW_ALL | GUC_NOT_IN_SAMPLE
+ {"exit_on_error", PGC_USERSET, ERROR_HANDLING_OPTIONS,
+ gettext_noop("Terminate session on any error."),
+ NULL
},
&ExitOnAnyError,
false, NULL, NULL
},
{
+ {"restart_after_crash", PGC_SIGHUP, ERROR_HANDLING_OPTIONS,
+ gettext_noop("Reinitialize after backend crash."),
+ NULL
+ },
+ &restart_after_crash,
+ true, NULL, NULL
+ },
+
+ {
{"log_duration", PGC_SUSET, LOGGING_WHAT,
gettext_noop("Logs the duration of each completed SQL statement."),
NULL
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index f02d44de72e..21469d3f4a8 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -520,6 +520,14 @@
#------------------------------------------------------------------------------
+# ERROR HANDLING
+#------------------------------------------------------------------------------
+
+#exit_on_error = false # terminate session on any error?
+#restart_after_crash = true # reinitialize after backend crash?
+
+
+#------------------------------------------------------------------------------
# CUSTOMIZED OPTIONS
#------------------------------------------------------------------------------