]> granicus.if.org Git - postgresql/commitdiff
Increase work_mem and maintenance_work_mem defaults by 4x
authorBruce Momjian <bruce@momjian.us>
Mon, 24 Feb 2014 18:04:51 +0000 (13:04 -0500)
committerBruce Momjian <bruce@momjian.us>
Mon, 24 Feb 2014 18:04:51 +0000 (13:04 -0500)
New defaults are 4MB and 64MB.

doc/src/sgml/config.sgml
src/backend/utils/misc/guc.c
src/backend/utils/misc/postgresql.conf.sample

index 4dc1277f25258482d9710c2fcd39b5e759259338..91a601559f0221a9d4cc930272416fc90d93d88f 100644 (file)
@@ -1213,7 +1213,7 @@ include 'filename'
        <para>
         Specifies the amount of memory to be used by internal sort operations
         and hash tables before writing to temporary disk files. The value
-        defaults to one megabyte (<literal>1MB</>).
+        defaults to four megabytes (<literal>4MB</>).
         Note that for a complex query, several sort or hash operations might be
         running in parallel; each operation will be allowed to use as much memory
         as this value specifies before it starts to write data into temporary
@@ -1239,7 +1239,7 @@ include 'filename'
         Specifies the maximum amount of memory to be used by maintenance
         operations, such as <command>VACUUM</command>, <command>CREATE
         INDEX</>, and <command>ALTER TABLE ADD FOREIGN KEY</>.  It defaults
-        to 16 megabytes (<literal>16MB</>).  Since only one of these
+        to 64 megabytes (<literal>64MB</>).  Since only one of these
         operations can be executed at a time by a database session, and
         an installation normally doesn't have many of them running
         concurrently, it's safe to set this value significantly larger
index 86afde17de536540a9e1c2f7ca38bd989ad6376d..aa5a8757fa30322c0a9f8aeb35c4001d7b427d6b 100644 (file)
@@ -1773,7 +1773,7 @@ static struct config_int ConfigureNamesInt[] =
                        GUC_UNIT_KB
                },
                &work_mem,
-               1024, 64, MAX_KILOBYTES,
+               4096, 64, MAX_KILOBYTES,
                NULL, NULL, NULL
        },
 
@@ -1784,7 +1784,7 @@ static struct config_int ConfigureNamesInt[] =
                        GUC_UNIT_KB
                },
                &maintenance_work_mem,
-               16384, 1024, MAX_KILOBYTES,
+               65536, 1024, MAX_KILOBYTES,
                NULL, NULL, NULL
        },
 
index 480c9e9797e3238a495f2435ecea465bedb5e696..07341e72a437237d9e26cb3cb0c81d97151fda12 100644 (file)
 # per transaction slot, plus lock space (see max_locks_per_transaction).
 # It is not advisable to set max_prepared_transactions nonzero unless you
 # actively intend to use prepared transactions.
-#work_mem = 1MB                                # min 64kB
-#maintenance_work_mem = 16MB           # min 1MB
+#work_mem = 4MB                                # min 64kB
+#maintenance_work_mem = 64MB           # min 1MB
 #autovacuum_work_mem = -1              # min 1MB, or -1 to use maintenance_work_mem
 #max_stack_depth = 2MB                 # min 100kB
 #dynamic_shared_memory_type = posix # the default is the first option