diff options
author | Simon Riggs <simon@2ndQuadrant.com> | 2017-09-01 07:55:00 +0100 |
---|---|---|
committer | Simon Riggs <simon@2ndQuadrant.com> | 2017-09-01 07:55:00 +0100 |
commit | 28915c7db4da4eaffb8eb0dc5c04c87dcf345eb6 (patch) | |
tree | eebc2e9bf3cf835f68c6dfc7e1c25cfa9f03ff72 | |
parent | 7610547c95f3a469115538f4b45eda2563a8188e (diff) | |
download | postgresql-28915c7db4da4eaffb8eb0dc5c04c87dcf345eb6.tar.gz postgresql-28915c7db4da4eaffb8eb0dc5c04c87dcf345eb6.zip |
Add note about diskspace usage of pg_commit_ts
Author: Thomas Munro
-rw-r--r-- | doc/src/sgml/maintenance.sgml | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/doc/src/sgml/maintenance.sgml b/doc/src/sgml/maintenance.sgml index fe1e0ed2b3d..616aece6c0e 100644 --- a/doc/src/sgml/maintenance.sgml +++ b/doc/src/sgml/maintenance.sgml @@ -526,19 +526,23 @@ <para> The sole disadvantage of increasing <varname>autovacuum_freeze_max_age</> - (and <varname>vacuum_freeze_table_age</> along with it) - is that the <filename>pg_xact</> subdirectory of the database cluster - will take more space, because it must store the commit status of all - transactions back to the <varname>autovacuum_freeze_max_age</> horizon. - The commit status uses two bits per transaction, so if - <varname>autovacuum_freeze_max_age</> is set to its maximum allowed - value of two billion, <filename>pg_xact</> can be expected to - grow to about half a gigabyte. If this is trivial compared to your - total database size, setting <varname>autovacuum_freeze_max_age</> to - its maximum allowed value is recommended. Otherwise, set it depending - on what you are willing to allow for <filename>pg_xact</> storage. - (The default, 200 million transactions, translates to about 50MB of - <filename>pg_xact</> storage.) + (and <varname>vacuum_freeze_table_age</> along with it) is that + the <filename>pg_xact</> and <filename>pg_commit_ts</filename> + subdirectories of the database cluster will take more space, because it + must store the commit status and (if <varname>track_commit_timestamp</> is + enabled) timestamp of all transactions back to + the <varname>autovacuum_freeze_max_age</> horizon. The commit status uses + two bits per transaction, so if + <varname>autovacuum_freeze_max_age</> is set to its maximum allowed value + of two billion, <filename>pg_xact</> can be expected to grow to about half + a gigabyte and <filename>pg_commit_ts</filename> to about 20GB. If this + is trivial compared to your total database size, + setting <varname>autovacuum_freeze_max_age</> to its maximum allowed value + is recommended. Otherwise, set it depending on what you are willing to + allow for <filename>pg_xact</> and <filename>pg_commit_ts</> storage. + (The default, 200 million transactions, translates to about 50MB + of <filename>pg_xact</> storage and about 2GB of <filename>pg_commit_ts</> + storage.) </para> <para> |