anchor.diff:  #enable_hashagg = on
   #enable_hashjoin = on
   #enable_indexscan = on
  +#enable_indexonlyscan = on
  +#enable_material = on
   #enable_mergejoin = on
   #enable_nestloop = on
   #enable_seqscan = on
  
positive.code: #
  #   name = value
  #
  # (The '=' is optional.)  White space may be used.  Comments are introduced
  # with '#' anywhere on a line.  The complete list of option names and
  # allowed values can be found in the PostgreSQL documentation.  The
  # commented-out settings shown in this file represent the default values.
  #
  # Please note that re-commenting a setting is NOT sufficient to revert it
  # to the default value, unless you restart the server.
  #
  # Any option can also be given as a command line switch to the server,
  # e.g., 'postgres -c log_connections=on'.  Some options can be changed at
  # run-time with the 'SET' SQL command.
  #
  # This file is read on server startup and when the server receives a
  # SIGHUP.  If you edit the file on a running system, you have to SIGHUP the
  # server for the changes to take effect, or use "pg_ctl reload". Some
  # settings, which are marked below, require a server shutdown and restart
  # to take effect.
  #
  # Memory units:  kB = kilobytes MB = megabytes GB = gigabytes
  # Time units:    ms = milliseconds s = seconds min = minutes h = hours d = days
  
  
  #---------------------------------------------------------------------------
  # FILE LOCATIONS
  #---------------------------------------------------------------------------
  
  # The default values of these variables are driven from the -D command line
  # switch or PGDATA environment variable, represented here as ConfigDir.
  
  #data_directory = 'ConfigDir'       # use data in another directory
                      # (change requires restart)
  #hba_file = 'ConfigDir/pg_hba.conf' # host-based authentication file
                      # (change requires restart)
  #ident_file = 'ConfigDir/pg_ident.conf' # ident configuration file
                      # (change requires restart)
  
  # If external_pid_file is not explicitly set, no extra PID file is written.
  #external_pid_file = '(none)'       # write an extra PID file
                      # (change requires restart)
  
  
  #---------------------------------------------------------------------------
  # CONNECTIONS AND AUTHENTICATION
  #---------------------------------------------------------------------------
  
  # - Connection Settings -
  
  #listen_addresses = 'localhost'     # what IP address(es) to listen on;
                      # comma-separated list of addresses;
                      # defaults to 'localhost', '*' = all
                      # (change requires restart)
  #port = 5432                # (change requires restart)
  max_connections = 100           # (change requires restart)
  # Note: increasing max_connections costs ~400 bytes of shared memory per
  # connection slot, plus lock space (see max_locks_per_transaction).  You
  # might also need to raise shared_buffers to support more connections.
  #superuser_reserved_connections = 3 # (change requires restart)
  unix_socket_directory = '/tmp/'     # (change requires restart)
  #unix_socket_group = ''         # (change requires restart)
  #unix_socket_permissions = 0777     # octal
                      # (change requires restart)
  #bonjour_name = ''          # defaults to the computer name
                      # (change requires restart)
  
  # - Security & Authentication -
  
  #authentication_timeout = 1min      # 1s-600s
  #ssl = on              # (change requires restart)
  #ssl_renegotiation_limit = 512MB    # amount of data between renegotiations
  #password_encryption = on
  #db_user_namespace = off
  
  # Kerberos
  #krb_server_keyfile = ''        # (change requires restart)
  #krb_srvname = 'postgres'       # (change requires restart)
  #krb_server_hostname = ''       # empty string matches any keytab entry
                      # (change requires restart)
  #krb_caseins_users = off        # (change requires restart)
  
  # - TCP Keepalives -
  # see 'man 7 tcp' for details
  
  #tcp_keepalives_idle = 0        # TCP_KEEPIDLE, in seconds;
                      # 0 selects the system default
  #tcp_keepalives_interval = 0        # TCP_KEEPINTVL, in seconds;
                      # 0 selects the system default
  #tcp_keepalives_count = 0       # TCP_KEEPCNT;
                      # 0 selects the system default
  
  
  #---------------------------------------------------------------------------
  # RESOURCE USAGE (except WAL)
  #---------------------------------------------------------------------------
  
  # - Memory -
  
  shared_buffers = 256MB          # min 128kB or max_connections*16kB
                      # (change requires restart)
  #temp_buffers = 8MB         # min 800kB
  #max_prepared_transactions = 5      # can be 0 or more
                      # (change requires restart)
  # Note: increasing max_prepared_transactions costs ~600 bytes of shared memory
  # per transaction slot, plus lock space (see max_locks_per_transaction).
  work_mem = 32MB             # min 64kB
  maintenance_work_mem = 256MB        # min 1MB
  #max_stack_depth = 2MB          # min 100kB
  
  # - Free Space Map -
  
  #max_fsm_pages = 204800     # min max_fsm_relations*16, 6 bytes each
                      # (change requires restart)
  #max_fsm_relations = 1000       # min 100, ~70 bytes each
                      # (change requires restart)
  
  # - Kernel Resource Usage -
  
  #max_files_per_process = 1000       # min 25
                      # (change requires restart)
  #shared_preload_libraries = ''      # (change requires restart)
  
  # - Cost-Based Vacuum Delay -
  
  #vacuum_cost_delay = 0          # 0-1000 milliseconds
  #vacuum_cost_page_hit = 1       # 0-10000 credits
  #vacuum_cost_page_miss = 10     # 0-10000 credits
  #vacuum_cost_page_dirty = 20        # 0-10000 credits
  #vacuum_cost_limit = 200        # 0-10000 credits
  
  # - Background writer -
  
  #bgwriter_delay = 200ms         # 10-10000ms between rounds
  #bgwriter_lru_percent = 1.0     # 0-100% of LRU buffers scanned/round
  #bgwriter_lru_maxpages = 5      # 0-1000 buffers max written/round
  #bgwriter_all_percent = 0.333       # 0-100% of all buffers scanned/round
  #bgwriter_all_maxpages = 5      # 0-1000 buffers max written/round
  
  
  #---------------------------------------------------------------------------
  # WRITE AHEAD LOG
  #---------------------------------------------------------------------------
  
  # - Settings -
  
  fsync = off         # turns forced synchronization on or off
  #wal_sync_method = fsync        # the default is the first option
                      # supported by the operating system:
                      #   open_datasync
                      #   fdatasync (default on Linux)
                      #   fsync
                      #   fsync_writethrough
                      #   open_sync
  #full_page_writes = on          # recover from partial page writes
  wal_buffers = 16MB          # min 32kB
                      # (change requires restart)
  #commit_delay = 0           # range 0-100000, in microseconds
  #commit_siblings = 5            # range 1-1000
  
  # - Checkpoints -
  
  checkpoint_segments = 32        # in logfile segments, min 1, 16MB each
  #checkpoint_timeout = 5min      # range 30s-1h
  #checkpoint_warning = 30s       # 0 is off
  
  # - Archiving -
  
  #archive_command = ''       # command to use to archive a logfile segment
  #archive_timeout = 0        # force a logfile segment switch after this
                  # many seconds; 0 is off
  
  
  #---------------------------------------------------------------------------
  # QUERY TUNING
  #---------------------------------------------------------------------------
  
  # - Planner Method Configuration -
  
  
negative.code: 
  # - Planner Cost Constants -
  
  #seq_page_cost = 1.0               # measured on an arbitrary scale
  #random_page_cost = 4.0            # same scale as above
  #cpu_tuple_cost = 0.01             # same scale as above
  #cpu_index_tuple_cost = 0.005      # same scale as above
  #cpu_operator_cost = 0.0025        # same scale as above
  #effective_cache_size = 128MB
  
  # - Genetic Query Optimizer -
  
  #geqo = on
  #geqo_threshold = 12
  #geqo_effort = 5              # range 1-10
  #geqo_pool_size = 0           # selects default based on effort
  #geqo_generations = 0              # selects default based on effort
  #geqo_selection_bias = 2.0         # range 1.5-2.0
  #geqo_seed = 0.0              # range 0.0-1.0
  
  # - Other Planner Options -
  
  #default_statistics_target = 100   # range 1-10000
  #constraint_exclusion = partition  # on, off, or partition
  #cursor_tuple_fraction = 0.1       # range 0.0-1.0
  #from_collapse_limit = 8
  #join_collapse_limit = 8      # 1 disables collapsing of explicit
                           # JOIN clauses
  
  
  #------------------------------------------------------------------------------
  # ERROR REPORTING AND LOGGING
  #------------------------------------------------------------------------------
  
  # - Where to Log -
  
  #log_destination = 'stderr'        # Valid values are combinations of
                           # stderr, csvlog, syslog, and eventlog,
                           # depending on platform.  csvlog
                           # requires logging_collector to be on.
  
  # This is used when logging to stderr:
  #logging_collector = off      # Enable capturing of stderr and csvlog
                           # into log files. Required to be on for
                           # csvlogs.
                           # (change requires restart)
  
  # These are only used if logging_collector is on:
  #log_directory = 'pg_log'          # directory where log files are written,
                           # can be absolute or relative to PGDATA
  #log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'  # log file name pattern,
                           # can include strftime() escapes
  #log_file_mode = 0600              # creation mode for log files,
                           # begin with 0 to use octal notation
  #log_truncate_on_rotation = off         # If on, an existing log file with the
                           # same name as the new log file will be
                           # truncated rather than appended to.
                           # But such truncation only occurs on
                           # time-driven rotation, not on restarts
                           # or size-driven rotation.  Default is
                           # off, meaning append to existing files
                           # in all cases.
  #log_rotation_age = 1d             # Automatic rotation of logfiles will
                           # happen after that time.  0 disables.
  #log_rotation_size = 10MB          # Automatic rotation of logfiles will
                           # happen after that much log output.
                           # 0 disables.
  
  # These are relevant when logging to syslog:
  #syslog_facility = 'LOCAL0'
  #syslog_ident = 'postgres'
  
  # This is only relevant when logging to eventlog (win32):
  #event_source = 'PostgreSQL'
  
  # - When to Log -
  
  #client_min_messages = notice      # values in order of decreasing detail:
                           #   debug5
                           #   debug4
                           #   debug3
                           #   debug2
                           #   debug1
                           #   log
                           #   notice
                           #   warning
                           #   error
  
  #log_min_messages = warning        # values in order of decreasing detail:
                           #   debug5
                           #   debug4
                           #   debug3
                           #   debug2
                           #   debug1
                           #   info
                           #   notice
                           #   warning
                           #   error
                           #   log
                           #   fatal
                           #   panic
  
  #log_min_error_statement = error   # values in order of decreasing detail:
                           #   debug5
                           #   debug4
                           #   debug3
                           #   debug2
                           #   debug1
                           #   info
                           #   notice
                           #   warning
                           #   error
                           #   log
                           #   fatal
                           #   panic (effectively off)
  
  #log_min_duration_statement = -1   # -1 is disabled, 0 logs all statements
                           # and their durations, > 0 logs only
                           # statements running at least this number
                           # of milliseconds
  
  
  # - What to Log -
  
  #debug_print_parse = off
  #debug_print_rewritten = off
  #debug_print_plan = off
  #debug_pretty_print = on
  #log_checkpoints = off
  #log_connections = off
  #log_disconnections = off
  #log_duration = off
  #log_error_verbosity = default          # terse, default, or verbose messages
  #log_hostname = off
  #log_line_prefix = ''              # special values:
                           #   %a = application name
                           #   %u = user name
                           #   %d = database name
                           #   %r = remote host and port
                           #   %h = remote host
                           #   %p = process ID
                           #   %t = timestamp without milliseconds
                           #   %m = timestamp with milliseconds
                           #   %i = command tag
                           #   %e = SQL state
                           #   %c = session ID
                           #   %l = session line number
                           #   %s = session start timestamp
                           #   %v = virtual transaction ID
                           #   %x = transaction ID (0 if none)
                           #   %q = stop here in non-session
                           #        processes
                           #   %% = '%'
                           # e.g. '<%u%%%d> '
  #log_lock_waits = off              # log lock waits >= deadlock_timeout
  #log_statement = 'none'            # none, ddl, mod, all
  #log_temp_files = -1               # log temporary files equal or larger
                           # than the specified size in kilobytes;
                           # -1 disables, 0 logs all temp files
  log_timezone = 'US/Pacific'
  
  
  #------------------------------------------------------------------------------
  # RUNTIME STATISTICS
  #------------------------------------------------------------------------------
  
  # - Query/Index Statistics Collector -
  
  #track_activities = on
  #track_counts = on
  #track_io_timing = off
  #track_functions = none            # none, pl, all
  #track_activity_query_size = 1024  # (change requires restart)
  #update_process_title = on
  #stats_temp_directory = 'pg_stat_tmp'
  
  
  # - Statistics Monitoring -
  