Parameter Categories
This document describes the categories of all system configuration parameters in YMatrix.
The complete list of categories is as follows:
- external_pid_file
- data_directory
- hba_file
- ident_file
Connections and Authentication
- bonjour
- bonjour_name
- gp_connection_send_timeout
- listen_addresses
- max_connections
- port
- superuser_reserved_connections
- unix_socket_directories
- unix_socket_group
- unix_socket_permissions
- tcp_keepalives_count
- tcp_keepalives_idle
- tcp_keepalives_interval
- tcp_user_timeout
- authentication_timeout
- db_user_namespace
- krb_caseins_users
- krb_server_keyfile
- password_encryption
- ssl
- ssl_ca_file
- ssl_cert_file
- ssl_ciphers
- ssl_crl_file
- ssl_dh_params_file
- ssl_ecdh_curve
- ssl_key_file
- ssl_max_protocol_version
- ssl_min_protocol_version
- ssl_passphrase_command
- ssl_passphrase_command_supports_reload
- ssl_prefer_server_ciphers
Client Connection Default Parameters
- bytea_output
- check_function_bodies
- client_min_messages
- default_tablespace
- default_transaction_deferrable
- default_transaction_read_only
- gin_fuzzy_search_limit
- gin_pending_list_limit
- gp_vmem_idle_resource_timeout
- idle_in_transaction_session_timeout
- lc_collate
- lc_ctype
- lock_timeout
- row_security
- search_path
- session_replication_role
- statement_timeout
- temp_tablespaces
- vacuum_cleanup_index_scale_factor
- vacuum_freeze_min_age
- vacuum_freeze_table_age
- vacuum_multixact_freeze_min_age
- vacuum_multixact_freeze_table_age
- client_encoding
- datestyle
- default_text_search_config
- extra_float_digits
- intervalstyle
- lc_messages
- lc_monetary
- lc_numeric
- lc_time
- timezone
- timezone_abbreviations
Multiple settings allow preloading shared libraries into the server to add functionality or improve performance. For example, the $libdir/mylib setting may cause mylib.so (or mylib.sl on some platforms) to be preloaded from the standard library directory. These settings differ in when they take effect and the privileges required to change them.
YMatrix procedural language libraries can be preloaded using the $libdir/plXXX syntax, where XXX is pgsql, perl, tcl, or python.
Only shared libraries specifically designed for use with YMatrix can be loaded this way. Each YMatrix-supported library contains a "magic block" that is checked for compatibility. As a result, non-YMatrix libraries cannot be loaded in this manner. You may use operating system tools (such as LD_PRELOAD) to load them instead.
Refer to the documentation of specific modules for recommended loading methods.
- jit_provider
- local_preload_libraries
- session_preload_libraries
- shared_preload_libraries
Error Reporting and Logging
- event_source
- logging_collector
- log_destination
- log_directory
- log_file_mode
- log_filename
- log_rotation_age
- log_rotation_size
- log_truncate_on_rotation
- syslog_facility
- syslog_ident
- syslog_sequence_numbers
- syslog_split_messages
- gp_interconnect_debug_retry_interval
- log_min_duration_statement
- log_min_error_statement
- log_min_messages
- log_statement_sample_rate
- log_transaction_sample_rate
- optimizer_minidump
- application_name
- debug_pretty_print
- debug_print_parse
- debug_print_plan
- debug_print_prelim_plan
- debug_print_rewritten
- debug_print_slice_table
- gp_debug_linger
- gp_log_format
- gp_log_interconnect
- gp_reraise_signal
- log_checkpoints
- log_connections
- log_disconnections
- log_dispatch_stats
- log_duration
- log_error_verbosity
- log_hostname
- log_line_prefix
- log_lock_waits
- log_replication_commands
- log_statement
- log_temp_files
- log_timezone
- cluster_name
- update_process_title
Resource Consumption
- autovacuum_work_mem
- dynamic_shared_memory_type
- gp_resource_group_memory_limit
- gp_vmem_protect_limit
- gp_vmem_protect_segworker_cache_limit
- gp_workfile_limit_files_per_query
- gp_workfile_limit_per_query
- gp_workfile_limit_per_segment
- huge_pages
- maintenance_work_mem
- max_prepared_transactions
- max_stack_depth
- mx_dump_mctx_threshold
- mx_dump_print_filter
- shared_buffers
- shared_memory_type
- temp_buffers
- work_mem
During execution of VACUUM and ANALYZE, the system maintains an internal counter tracking estimated I/O costs of various operations. When the accumulated cost reaches a limit defined by vacuum_cost_limit, the process performing the operation sleeps for a short time as specified by vacuum_cost_delay. The counter is then reset before execution resumes.
This feature allows administrators to reduce the I/O impact of these commands on concurrent database activity. In many cases, it is not critical that maintenance commands such as VACUUM and ANALYZE complete quickly. What matters is that they do not significantly affect the system's ability to perform other database operations. Cost-based vacuum delay provides a way for administrators to ensure this.
- vacuum_cost_delay
- vacuum_cost_limit
- vacuum_cost_page_dirty
- vacuum_cost_page_hit
- vacuum_cost_page_miss
- backend_flush_after
- effective_io_concurrency
- max_parallel_maintenance_workers
- max_parallel_workers
- max_parallel_workers_per_gather
- max_worker_processes
- old_snapshot_threshold
Query Tuning
- enable_bitmapscan
- enable_groupagg
- enable_hashagg
- enable_hashjoin
- enable_indexonlyscan
- enable_indexscan
- enable_mars2aggscan
- enable_material
- enable_mergejoin
- enable_nestloop
- enable_parallel_append
- enable_parallel_hash
- enable_partition_pruning
- enable_partitionwise_aggregate
- enable_partitionwise_join
- enable_seqscan
- enable_sort
- enable_tidscan
- gp_enable_agg_distinct
- gp_enable_agg_distinct_pruning
- gp_enable_direct_dispatch
- gp_enable_fast_sri
- gp_enable_multiphase_agg
- gp_enable_preunique
- gp_enable_relsize_collection
- gp_enable_sort_distinct
- gp_enable_sort_limit
- gp_selectivity_damping_for_joins
- gp_selectivity_damping_for_scans
- min_parallel_index_scan_size
- min_parallel_table_scan_size
- parallel_leader_participation
- cpu_index_tuple_cost
- cpu_operator_cost
- cpu_tuple_cost
- cursor_tuple_fraction
- effective_cache_size
- gp_appendonly_random_page_cost
- gp_compressed_random_page_cost
- gp_motion_cost_per_row
- gp_segments_for_planner
- parallel_setup_cost
- parallel_tuple_cost
- random_page_cost
- seq_page_cost
GEQO is an algorithm that uses a heuristic search method for query planning. It reduces planning time for complex queries involving multiple table joins, at the expense of potentially suboptimal plans compared to exhaustive search methods.
- geqo
- geqo_effort
- geqo_generations
- geqo_pool_size
- geqo_seed
- geqo_selection_bias
- geqo_threshold
These parameters control the data sampling size for ANALYZE operations. Adjusting them affects statistics collection across the entire system. You can use the ALTER TABLE SET STATISTICS clause to configure statistics collection for specific tables and columns.
- default_statistics_target
- gp_enable_agg_distinct
- gp_enable_agg_distinct_pruning
- gp_enable_multiphase_agg
- gp_enable_preunique
- gp_workfile_compression
- mx_pullup_agg_proj_and_qual
- join_collapse_limit
- gp_adjust_selectivity_for_outerjoins
- gp_hashjoin_tuples_per_bucket
- gp_workfile_compression
- constraint_exclusion
- force_parallel_mode
- from_collapse_limit
- gp_enable_predicate_propagation
- gp_max_plan_size
- gp_statistics_pullup_from_child_partition
- gp_statistics_use_fkeys
- gp_max_slices
- plan_cache_mode
- jit
- jit_above_cost
- jit_debugging_support
- jit_dump_bitcode
- jit_expressions
- jit_inline_above_cost
- jit_optimize_above_cost
- jit_profiling_support
- jit_tuple_deforming
- gp_enable_relsize_collection
- optimizer
- optimizer_analyze_root_partition
- optimizer_array_expansion_threshold
- optimizer_control
- optimizer_cost_model
- optimizer_cte_inlining_bound
- optimizer_dpe_stats
- optimizer_enable_associativity
- optimizer_enable_dml
- optimizer_enable_indexonlyscan
- optimizer_enable_multiple_distinct_aggs
- optimizer_force_agg_skew_avoidance
- optimizer_force_multistage_agg
- optimizer_force_three_stage_scalar_dqa
- optimizer_join_arity_for_associativity_commutativity
- optimizer_join_order
- optimizer_join_order_threshold
- optimizer_mdcache_size
- optimizer_metadata_caching
- optimizer_parallel_union
- optimizer_penalize_broadcast_threshold
- optimizer_penalize_skew
- optimizer_print_optimization_stats
- optimizer_sort_factor
- mx_enable_runtime_filter
- mx_runtime_join_ratio
- mx_runtime_max_filter_per_query
- mx_runtime_max_inner_rows
- mx_runtime_max_intent_level
- mx_runtime_min_outer_rows
- mx_runtime_scan_ratio
- matrix.enable_mxvector
- matrix.enable_mxv_aggregate
- matrix.enable_mxv_hash_aggregate
- matrix.enable_mxv_append
- matrix.enable_mxv_motion
- matrix.enable_mxv_presort_aggregate
- matrix.enable_mxv_root
- matrix.enable_mxv_sort
- matrix.enable_mxv_strict_mode
- matrix.enable_mxv_fallback_expression
- matrix.enable_mxv_limit
- matrix.enable_mxv_window
- matrix.enable_mxv_subqueryscan
- matrix.enable_mxv_hash_join
- matrix.enable_mxv_hash_join_advanced_hashmap
- matrix.enable_mxv_aggscan
- matrix.enable_mxv_heap_adapter
- matrix.enable_mxv_indexscan
Runtime Statistics
- default_statistics_target
These parameters control the server-wide statistics collection feature. When enabled, the collected data can be accessed through the pg_stat and pg_statio system view families.
- track_activities
- track_activity_query_size
- track_counts
- track_functions
- track_io_timing
- stats_queue_level
- stats_temp_directory
- log_executor_stats
- log_parser_stats
- log_planner_stats
- log_statement_stats
- gp_autostats_mode
- gp_autostats_mode_in_functions
- gp_autostats_on_change_threshold
- log_autostats
- autovacuum
- autovacuum_analyze_scale_factor
- autovacuum_analyze_threshold
- autovacuum_freeze_max_age
- autovacuum_max_workers
- autovacuum_multixact_freeze_max_age
- autovacuum_naptime
- autovacuum_vacuum_cost_delay
- autovacuum_vacuum_cost_limit
- autovacuum_vacuum_scale_factor
- autovacuum_vacuum_threshold
- log_autovacuum_min_duration
Database Table
- default_table_access_method
- gp_create_table_random_default_distribution
- gp_default_storage_options
- gp_appendonly_compaction
- gp_appendonly_compaction_threshold
- gp_safefswritesize
- compress_threshold
- level0_merge_threshold
- level0_upgrade_size
- level1_upgrade_size
- sortheap_automerge_threshold
- sortheap_sort_mem
- sortheap_sort_mem_core
- compress_threshold
- level_size_amplifier
- prefer_load_mode
- rowstore_runsize
- matrixts.enable_object_cache
- mars3.degrade_credential_update_interval
- mars3.degrade_probe_interval
- mars3.enable_object_prefetch
- mars3.enable_objectstore
- gp_external_enable_exec
- gp_external_enable_filter_pushdown
- gp_external_max_segs
- gp_initial_bad_row_limit
- gp_reject_percent_threshold
- mx_discard_gpfdist_data
- readable_external_table_timeout
- writable_external_table_bufsize
- verify_gpfdists_cert
Lock Management
--- SPLIT ---
Lock Management Parameters
- deadlock_timeout
- gp_enable_global_deadlock_detector
- max_locks_per_transaction
- max_pred_locks_per_page
- max_pred_locks_per_relation
- max_pred_locks_per_transaction
Resource Management Parameters
- gp_resgroup_memory_policy
- gp_resource_group_cpu_limit
- gp_resource_group_cpu_priority
- gp_resource_group_queuing_timeout
- gp_resource_manager
- memory_spill_ratio
- mx_cgroup_v1_base
- gp_resqueue_memory_policy
- gp_resqueue_priority
- gp_resqueue_priority_cpucores_per_segment
- gp_resqueue_priority_sweeper_interval
- gp_vmem_protect_limit
- max_resource_portals_per_transaction
- max_resource_queues
- max_statement_mem
- resource_cleanup_gangs_on_wait
- resource_select_only
- runaway_detector_activation_percent
- statement_mem
YMatrix Database Cluster Parameters
- enable_drop_matrixdb_extension
- mx_create_table_default_segments
- mx_default_segment_set
- mx_ha_provider
- mx_postmaster_pdeath_signal
- repl_catchup_within_range
- wait_for_replication_threshold
- gp_interconnect_fc_method
- gp_interconnect_proxy_addresses
- gp_interconnect_queue_depth
- gp_interconnect_setup_timeout
- gp_interconnect_snd_queue_depth
- gp_interconnect_transmit_timeout
- gp_interconnect_type
- gp_max_packet_size
- gp_segment_connect_timeout
- mx_interconnect_compress
- mx_generic_packet_rtt
- gp_fts_probe_retries
- gp_fts_probe_interval
- gp_fts_probe_timeout
- gp_cached_segworkers_threshold
- gp_set_proc_affinity
- gp_max_local_distributed_cache
- gp_command_count
- gp_contentid
- gp_dbid
- gp_role
- gp_session_id
- gp_server_version
- gp_server_version_num
Write Ahead Log Parameters
- commit_delay
- commit_siblings
- full_page_writes
- fsync
- synchronous_commit
- wal_buffers
- wal_compression
- wal_init_zero
- wal_level
- wal_log_hints
- wal_recycle
- wal_sync_method
- wal_writer_delay
- wal_writer_flush_after
- checkpoint_completion_target
- checkpoint_flush_after
- checkpoint_timeout
- checkpoint_warning
- max_wal_size
- min_wal_size
- archive_command
- archive_mode
- archive_timeout
These parameters are used only in recovery mode. You must reset them if you plan to perform any subsequent recovery operations.
"Recovery" includes running the server as a standby server or performing point-in-time recovery. Typically, standby mode is used for high availability and/or read scalability, while point-in-time recovery is used to recover from data loss.
- archive_cleanup_command
- recovery_end_command
- restore_command
- recovery_target
- recovery_target_action
- recovery_target_inclusive
- recovery_target_lsn
- recovery_target_name
- recovery_target_time
- recovery_target_timeline
- recovery_target_xid
Replication Parameters
- max_replication_slots
- max_slot_wal_keep_size
- max_wal_senders
- track_commit_timestamp
- wal_init_zero
- wal_keep_segments
- wal_recycle
- wal_sender_timeout
These settings are ignored on standby servers.
- synchronous_standby_names
- vacuum_defer_cleanup_age
- hot_standby
- hot_standby_feedback
- max_standby_archive_delay
- max_standby_streaming_delay
- primary_conninfo
- primary_slot_name
- promote_trigger_file
- recovery_min_apply_delay
- wal_receiver_status_interval
- wal_receiver_timeout
- wal_retrieve_retry_interval
These parameters control the behavior of logical replication subscribers. Their values on the publisher are irrelevant.
- max_logical_replication_workers
- max_sync_workers_per_subscription
- pljava_classpath
- pljava_classpath_insecure
- pljava_release_lingering_savepoints
- pljava_statement_cache_size
- pljava_vmoptions
Version and Platform Compatibility Parameters
- array_nulls
- backslash_quote
- escape_string_warning
- lo_compat_privileges
- operator_precedence_warning
- quote_all_identifiers
- standard_conforming_strings
- synchronize_seqscans
- gp_debug_add_path