Quick Start
Simulate Time Series Scenarios
Standard Cluster Deployment
Data Modeling
Connecting to The database
Data Writing
Data Migration
Data Query
Scene Application Examples
Federal Query
Maintenance and Monitoring
Global Maintenance
Partition Maintenance
Backup and Restore
Cluster Expansion
Monitoring
Performance Tuning
Troubleshooting
Reference Guide
Tool Guide
Data Type
Storage Engine
Execution Engine
Configuration Parameters
Index
Extension
SQL Reference
FAQ
This document describes the usage of server system configuration parameters, including explanations of parameter data types and values, setting classifications, and more.
All parameter names are case-insensitive.
Each parameter has one of the data types listed in the following table:
| Data Type | Description | Case-Sensitive |
|---|---|---|
| boolean | Supported values: on / off / true / false / yes / no / 1 / 0 | No |
| enum | Enumerated type. Only string values listed in the allowed set are valid | No |
| int | Integer | |
| floating point | Floating-point number | |
| string | String | Yes |
Some parameter values relate to memory size or time duration. For such values, if you do not use the default unit, you must explicitly specify a unit when setting the value. For example, memory units KB, MB, GB; time units ms, s, min, h, d, m, y, etc. Note that memory units use a multiplier of 1024, not 1000.
Examples:
=# SET statement_mem TO '200MB';
=# SET idle_in_transaction_session_timeout TO '1s';
Note!
1.A valid time expression includes a number and its unit; the same applies to memory expressions.
2.When using the default unit, the unit may be omitted.
3.There must be no space between the number and the unit.
4.INT_MAXrepresents the maximum constant value for the int type, which is2147483647.
Many system configuration parameters have restrictions on modification privileges, methods of setting, and when settings take effect. For example, only superusers of the YMatrix database can modify certain critical parameters. Some parameters require restarting the database management system before changes take effect.
In YMatrix, each instance of the MXMaster and every MXSegment has its own postgresql.conf file (located in its respective data directory). Some parameters are classified as segments, meaning that each MXSegment instance reads its parameter value from its local postgresql.conf file. Therefore, you must manually configure these parameters on both the MXMaster and each MXSegment. In contrast, if a parameter is of type master, it needs to be set only on the MXMaster—the MXMaster automatically synchronizes the setting to all MXSegments, or the MXSegments ignore their local values.
In summary, the following table and the above explanation aim to clearly describe how to interpret the 设置分类 column in the individual parameter reference tables.
| Setting Classification | Description |
|---|---|
| master / segments | master means the parameter can be modified on the MXMaster of the YMatrix cluster using the gpconfig command in the postgresql.conf file. After modification, the value is automatically propagated to MXSegments at runtime or ignored by them.segments means the parameter must be modified on the MXMaster and, if necessary, also on each MXSegment. Each MXSegment uses its own configuration value. These parameters often require a system restart to take effect. |
| session / system | session indicates the parameter is session-level; system indicates it is system-level. YMatrix parameter precedence order is: session (SET) > database and role (ALTER ROLE...IN DATABASE...SET) > role (ALTER ROLE...SET) > database (ALTER DATABASE...SET) > system ( postgresql.conf). System-level parameters can only be modified via the gpconfig command in this file. |
| restart / reload | restart means the change takes effect only after restarting the YMatrix database system. reload means the change takes effect after reloading the server configuration file (mxstop -u), without stopping the database system. |
| table | table means the parameter can only be set during table creation using the WITH clause. It applies to a single table and cannot be altered once set. |
| superuser | Session-level parameter that can only be modified by a database superuser. |
| read only | Read-only parameter; cannot be modified. |