diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
new file mode 100644
index e12778b..47bdebf
*** a/doc/src/sgml/config.sgml
--- b/doc/src/sgml/config.sgml
*************** include 'filename'
*** 1213,1219 ****
         <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</>).
          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
--- 1213,1219 ----
         <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 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
*************** include 'filename'
*** 1239,1245 ****
          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
          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
--- 1239,1245 ----
          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 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
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
new file mode 100644
index 86afde1..aa5a875
*** a/src/backend/utils/misc/guc.c
--- b/src/backend/utils/misc/guc.c
*************** static struct config_int ConfigureNamesI
*** 1773,1779 ****
  			GUC_UNIT_KB
  		},
  		&work_mem,
! 		1024, 64, MAX_KILOBYTES,
  		NULL, NULL, NULL
  	},
  
--- 1773,1779 ----
  			GUC_UNIT_KB
  		},
  		&work_mem,
! 		4096, 64, MAX_KILOBYTES,
  		NULL, NULL, NULL
  	},
  
*************** static struct config_int ConfigureNamesI
*** 1784,1790 ****
  			GUC_UNIT_KB
  		},
  		&maintenance_work_mem,
! 		16384, 1024, MAX_KILOBYTES,
  		NULL, NULL, NULL
  	},
  
--- 1784,1790 ----
  			GUC_UNIT_KB
  		},
  		&maintenance_work_mem,
! 		65536, 1024, MAX_KILOBYTES,
  		NULL, NULL, NULL
  	},
  
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
new file mode 100644
index 480c9e9..07341e7
*** a/src/backend/utils/misc/postgresql.conf.sample
--- b/src/backend/utils/misc/postgresql.conf.sample
***************
*** 124,131 ****
  # 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
  #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
--- 124,131 ----
  # 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 = 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
