PostgreSQL 8.4 config


# CONNECTIONS    
    
###enable_hashjoin = false     
    
listen_addresses = '*'    
port = 5432				# (change requires restart)    
max_connections = 2000			# (change requires restart)    
    
# BUFFERS    
    
effective_cache_size = 48000MB    
shared_buffers = 12000MB		# min 128kB or max_connections*16kB    
					# (change requires restart)    
temp_buffers = 200MB			# min 800kB    
					# (change requires restart)    
work_mem = 100MB				# min 64kB    
maintenance_work_mem = 600MB		# min 1MB    
#max_stack_depth = 2MB			# min 100kB    
    
    
# - Free Space Map -    
    
# no need since 8.4    
###max_fsm_pages = 2048000		# min max_fsm_relations*16, 6 bytes each    
					# (change requires restart)    
#max_fsm_relations = 1000		# min 100, ~70 bytes each    
					# (change requires restart)    
    
    
fsync = on				# turns forced synchronization on or off    
synchronous_commit = off		# immediate fsync at commit    
wal_sync_method = fdatasync		# the default is the first option     
					# supported by the operating system:    
					#   open_datasync    
					#   fdatasync    
					#   fsync    
					#   fsync_writethrough    
					#   open_sync    
#full_page_writes = on			# recover from partial page writes    
    
wal_buffers = 2MB			# min 32kB    
					# (change requires restart)    
wal_writer_delay = 400ms		# 1-10000 milliseconds    
    
#commit_delay = 0			# range 0-100000, in microseconds    
#commit_siblings = 5			# range 1-1000    
    
# - Checkpoints -    
    
checkpoint_segments = 128		# in logfile segments, min 1, 16MB each    
    
#checkpoint_timeout = 5min		# range 30s-1h    
#checkpoint_completion_target = 0.5	# checkpoint target duration, 0.0 - 1.0    
#checkpoint_warning = 30s		# 0 is off    
    
# - Archiving -    
    
archive_mode = off		# allows archiving to be done    
				# (change requires restart)    
#archive_command = ''		# command to use to archive a logfile segment    
#archive_timeout = 0		# force a logfile segment switch after this    
				# time; 0 is off    
    
    
    
    
    
#------------------------------------------------------------------------------    
# AUTOVACUUM PARAMETERS    
#------------------------------------------------------------------------------    
    
track_counts = on    
autovacuum = on				# Enable autovacuum subprocess?  'on'     
					# requires track_counts to also be on.    
log_autovacuum_min_duration = 0		# -1 disables, 0 logs all actions and    
					# their durations, > 0 logs only    
					# actions running at least that time.    
autovacuum_max_workers = 4		# max number of autovacuum subprocesses    
autovacuum_naptime = 20			# time between autovacuum runs    
autovacuum_vacuum_threshold = 50	# min number of row updates before    
					# vacuum    
autovacuum_analyze_threshold = 50	# min number of row updates before     
					# analyze    
autovacuum_vacuum_scale_factor = 0.001	# fraction of table size before vacuum    
    
#autovacuum_analyze_scale_factor = 0.1	# fraction of table size before analyze    
#autovacuum_freeze_max_age = 200000000	# maximum XID age before forced vacuum    
					# (change requires restart)    
#autovacuum_vacuum_cost_delay = 20	# default vacuum cost delay for    
					# autovacuum, -1 means use    
					# vacuum_cost_delay    
#autovacuum_vacuum_cost_limit = -1	# default vacuum cost limit for    
					# autovacuum, -1 means use    
					# vacuum_cost_limit    
    
    
# These settings are initialized by initdb, but they can be changed.    
lc_messages = 'C'			# locale for system error message    
					# strings    
lc_monetary = 'C'			# locale for monetary formatting    
lc_numeric = 'C'			# locale for number formatting    
lc_time = 'C'				# locale for time formatting    
    
# default configuration for text search    
default_text_search_config = 'pg_catalog.english'    
    
log_min_messages = info