aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2013-09-16 14:36:01 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2013-09-16 14:36:01 +0300
commit0892ecbc015930dde2cee9ad464b9b70fdb7667e (patch)
tree68ae2bf8f3d7739d0367a8a3a4838b8d710266e8 /src
parentcdeb79adcfb2e46efd4f76c39184dd452ae1acd0 (diff)
downloadpostgresql-0892ecbc015930dde2cee9ad464b9b70fdb7667e.tar.gz
postgresql-0892ecbc015930dde2cee9ad464b9b70fdb7667e.zip
Add a GUC to report whether data page checksums are enabled.
Bernd Helmle
Diffstat (limited to 'src')
-rw-r--r--src/backend/access/transam/xlog.c4
-rw-r--r--src/backend/utils/misc/guc.c12
2 files changed, 16 insertions, 0 deletions
diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index dc47c4760bf..fc495d6a62d 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -4844,6 +4844,10 @@ ReadControlFile(void)
" but the server was compiled without USE_FLOAT8_BYVAL."),
errhint("It looks like you need to recompile or initdb.")));
#endif
+
+ /* Make the fixed settings visible as GUC variables, too */
+ SetConfigOption("data_checksums", DataChecksumsEnabled() ? "yes" : "no",
+ PGC_INTERNAL, PGC_S_OVERRIDE);
}
void
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 7d297bcd343..3107f9cf027 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -466,6 +466,7 @@ static int max_identifier_length;
static int block_size;
static int segment_size;
static int wal_block_size;
+static bool data_checksums;
static int wal_segment_size;
static bool integer_datetimes;
static int effective_io_concurrency;
@@ -1457,6 +1458,17 @@ static struct config_bool ConfigureNamesBool[] =
NULL, NULL, NULL
},
+ {
+ {"data_checksums", PGC_INTERNAL, PRESET_OPTIONS,
+ gettext_noop("Shows whether data checksums are turned on for this cluster"),
+ NULL,
+ GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE
+ },
+ &data_checksums,
+ false,
+ NULL, NULL, NULL
+ },
+
/* End-of-list marker */
{
{NULL, 0, 0, NULL, NULL}, NULL, false, NULL, NULL, NULL