10 April 2018
(An intermittent series on PostgreSQL parameters whose default settings you should change.)
wal_level = logical
wal_level controls how much information is written into the write-ahead log. Higher settings write more information, enabling more features, at the expense of (somewhat) larger write-ahead log volume.
Just set it to
logical, the highest setting. The incremental volume is not that significant, and you are then ready to support logical replication without a restart in case you feel the need.
(If you are running 9.3 or earlier, the highest
wal_level setting is
hot_standby, but you should have upgraded by now.)
wal_log_hints = on# if you do not have data page checksums enabled.
This setting enables the logging of certain hint-bit changes. Without going into gruesome detail, this is required for certain tools (in particular,
pg_rewind) to operate properly. Just turn it on.
If the cluster was initialized with data page checksums, you’re getting hint bit logging anyway, so there’s no need to turn it on (although it doesn’t hurt to do so; it’s ignored on clusters with data page checksums).