This document describes the parameters related to the client connection default values category in the system configuration parameters.
Caution!
To ensure system stability and security, please exercise caution when manually modifying the relevant parameters.
Set the output format for bytea
type values.
hex
(default) and escape
(traditional PostgreSQL format).Data type | Default value | Value range | Setting category |
---|---|---|---|
enum | hex | hex / escape | segments; session; reload |
This parameter controls whether to check the syntax and references of the function body when creating a function using the CREATE FUNCTION
statement.
Data Type | Default Value | Setting Category |
---|---|---|
boolean | on | master; session; reload |
Control the level of messages sent to the client.
log
value in this parameter is different from that in the log_min_messages
parameter.Data type | Default value | Value range | Setting category |
---|---|---|---|
enum | notice | debug5 / debug4 / debug3 / debug2 / debug1 / log / notice / warning / error Each level includes all subsequent levels. The later the level, the fewer messages are sent. |
master;session;reload |
This variable specifies the default tablespace for creating objects (tables and indexes) when a CREATE
command does not explicitly specify a tablespace.
CREATE
permissions, the setting is successful; otherwise, the current database is automatically specified as the default tablespace.temp_tablespaces
.Data Type | Default Value | Setting Category |
---|---|---|
string | master;session;reload |
Whether to grant read-only permissions to each new transaction.
off
, which grants both read and write permissions.Data Type | Default Value | Setting Category |
---|---|---|
boolean | off | master;session;reload |
The soft upper limit of the size of the set returned by the GIN index.
Data type | Default value | Value range | Setting category |
---|---|---|---|
int | 0 | 0 ~ INT_MAX | master;session;reload |
The maximum size of the pending list of GIN indexes that can be used when fastupdate
is enabled.
Data type | Default value | Value range | Setting category |
---|---|---|---|
int | 4096 | 64 ~ (INT_MAX/1024) | master;session;reload |
If a database session remains idle for longer than the specified time (in milliseconds), the session will release system resources (such as shared memory) but will remain connected to the database.
0
, this feature is disabled.Data type | Default value | Value range | Setting category |
---|---|---|---|
int | 18000 | 0 ~ INT_MAX | master;system;reload |
Terminate any session with an open transaction that has been idle for longer than the time specified by this parameter.
0
, which disables the timeout.Data type | Default value | Value range | Setting category |
---|---|---|---|
int | 0 | 0 ~ INT_MAX | master;session;reload |
Reports the locale settings for sorting text data.
Data Type | Default Value | Setting Category |
---|---|---|
System Dependency | read only |
The report determines the regional settings for character classification.
Data Type | Default Value | Setting Category |
---|---|---|
System Dependency | read only |
If any statement waits longer than the time specified by this parameter while attempting to acquire a lock on a table, index, row, or other database object, the statement will be aborted.
LOCK TABLE
or SELECT FOR UPDATE
without NOWAIT
) and implicitly acquired locks.statement_timeout
, this timeout only occurs while waiting for a lock.statement_timeout
is non-zero, setting lock_timeout
to the same or a larger value is meaningless, as the transaction timeout will always be triggered first.log_min_error_statement
is set to error
or lower, the timed-out statement will be logged.lock_timeout
in postgresql.conf
, as it affects all sessions.0
, which disables the timeout.Data type | Default value | Value range | Setting category |
---|---|---|---|
int | 0 | 0 ~ INT_MAX | master;session;reload |
This variable controls whether to raise an error instead of applying a row security policy.
on
, the policy is applied normally; when set to off
, the query fails if at least one policy is applied.off
. pg_dump
makes this change by default.BYPASSRLS
attribute).Data Type | Default Value | Setting Category |
---|---|---|
boolean | on | master;system;restart |
When an object (table, data type, function, etc.) is referenced by a simple name without a schema qualifier, this parameter specifies the order in which the schema containing the object is searched.
search_path
must be a comma-separated list of schema names. Any name that is not an existing schema name, or a schema for which the user does not have USAGE
permission, will be ignored without warning.$user
, the schema with the name returned by CURRENT_USER
will replace this special name. If such a special name schema exists, the user has USAGE privileges for that schema (if not, $user
is ignored).pg_catalog
is mentioned in the search path, the system catalog schema is always searched. If it is mentioned in the path, it will be searched in the order specified by the path. If pg_catalog
is not in the path, it will be searched before any path items.pg_temp_nnn
is always searched (if it exists). It can be explicitly listed in the path using the alias pg_temp
. If it is not listed in the path, it will be searched first (even before pg_catalog
). However, the temporary schema is only used to search for relations (tables, views, sequences, etc.) and data type names. It is never used to search for function or operator names.search_path
.“$user”, public
. This configuration supports databases where no user owns a private schema and all users share the public
schema, each user has their own private schema, or a combination of both. Other effects can be achieved by modifying the default search path settings globally or per user.current_schemas
. This differs from checking the value of search_path
because current_schemas
shows how the items currently in search_path
are resolved.Data type | Default value | Value range | Setting category |
---|---|---|---|
string | “$user”, public | Comma-separated list of pattern names | master; session; reload |
Controls the triggering of triggers and rules related to replication for the current session.
ENABLE TRIGGER
and ENABLE RULE
clauses in the ALTER TABLE statement.origin
and local
settings equally. Third-party replication systems may use these values for their internal purposes, such as using local
to mark a session whose changes should not be replicated.replica
will also disable all foreign key checks. If used improperly, this may result in inconsistent data.Data type | Default value | Value range | Setting category |
---|---|---|---|
enum | origin | origin / replica / local | segments;session;reload;superuser |
Terminate any statement that has been running for longer than the specified amount of time (in milliseconds).
log_min_error_statement
is set to error
or lower, statements that time out will also be logged.postgresql.conf
, as it affects all sessions.0
, which disables the timeout.Data type | Default value | Value range | Setting category |
---|---|---|---|
int | 0 | 0 ~ INT_MAX | master;session;reload |
When the CREATE
command does not explicitly specify a tablespace, specify the tablespace in which to create temporary objects (temporary tables and indexes on temporary tables).
temp_tablespaces
interactively, avoid specifying non-existent tablespaces or tablespaces for which the user does not have CREATE
permissions. For non-superusers, superusers must grant them CREATE
privileges on temporary tablespaces. When using previously set values (e.g., values in postgresql.conf
), non-existent tablespaces are ignored, as are tablespaces for which the user lacks CREATE
privileges.Data type | Default value | Value range | Setting category |
---|---|---|---|
string | One or more tablespace names | master;session;reload |
Specifies a fraction of the total number of heap tuples counted during the previous statistics collection process. Inserting tuples up to this quantity will not cause an index scan during the VACUUM
cleanup phase.
vacuum_cleanup_index_scale_factor
of the total number of heap tuples detected during the last statistics collection.VACUUM
finds dead tuples. Therefore, the B-tree index scan in the cleanup phase can only be skipped if no dead tuples are detected during the second and subsequent VACUUM cycles.vacuum_cleanup_index_scale_factor
is set to 0
, the index scan is not skipped during the VACUUM
cleanup.Data type | Default value | Value range | Setting category |
---|---|---|---|
floating point | 0.1 | 0 ~ 10000000000 | segments;session;reload |
Specify the cutoff age (within the transaction) that VACUUM should use when deciding whether to replace transaction IDs with FrozenXIDs while scanning tables.
Data type | Default value | Value range | Setting category |
---|---|---|---|
int | 50000000 | 0 ~ 100000000000 | segments;system;restart |
When the pg_class.relfrozenxid
field of a table reaches the age specified by this setting, VACUUM
performs an aggressive scan.
VACUUM
in that it accesses every page that may contain unfrozen XIDs or MXIDs, rather than just those that may contain dead tuples.VACUUM
on a regular basis.Data type | Default value | Value range | Setting category |
---|---|---|---|
int | 150000000 | 0 ~ 200000000 | segments;session;reload |
Specify VACUUM
to determine whether to replace the composite transaction ID with an updated transaction ID or the cutoff age of the composite transaction ID (calculated based on the composite transaction) when scanning the table.
Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
int | 5000000 | 0 ~ 100000000 | segments; session; reload |
If the pg_class.relminmxid
field of the table exceeds the age specified by this setting, VACUUM
performs an aggressive scan.
VACUUM
is that it visits every page that may contain an unfreezen XID or MXID rather than just those that may contain a dead tuple.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
int | 150000000 | 0 ~ 200000000 | segments; session; reload |
Set client encoding (character set).
Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | SQL_ASCII | Supported character sets | master; session; reload |
Sets the display format for date and time values, and rules for interpreting ambiguity of date input values.
ISO
, Postgres
, SQL
, or German
), input/output year/month/day order (DMY
, MDY
, or YMD
). These can be set independently or together. The keywords Euro
and European
are synonyms for DMY
; the keywords US
, NonEuro
and NonEuropean
are synonyms for MDY
.ISO, MDY
, but initdb
will initialize the configuration file with settings corresponding to the selected lc_time
area behavior.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | iso, mdy | master; system; restart |
Select those variants of the text search function to use the text search configuration that does not specify explicit parameters for the configuration.
pg_catalog.simple
, but if the configuration of a matching area can be identified, initdb
will initialize the configuration file with the settings corresponding to the selected lc_ctype
area.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | pg_catalog.english | Name of text search configuration | master; session; reload |
This parameter is used to adjust the number of bits displayed by floating point values, including float4
, float8
and geometric data types.
float8
value requires up to 17 digits, and the float4
value requires up to 9 digits.3
.0
or negative, the output is rounded to the given decimal precision.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
int | 1 | -15 ~ 3 | master; session; reload |
Sets the display format of interval values.
sql_standard
will produce output matching SQL standard interval textiso_8601
will generate output that matches the ISO 8601 [Defined Indicator] (https://www.postgresql.org/docs/8.4/datatype-datetime.html).intervalstyle
parameter can also affect the interpretation of ambiguity of interval inputs.| Data Type | Default Value | Value Range | Set Classification |
| --- | --- | --- | --- |
| enum | postgres | sql_standard / postgres / iso_8601 / postgres_verbose | master; session; reload |Sets the language in which the message is displayed.
locale -a
.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | Locale listed using locale -a |
segments; system; restart; superuser |
Sets the locale for formatting currency amounts, for example using the to_char
series function.
locale -a
.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | Locale listed using locale -a |
segments; system; restart |
Sets the locale for formatting numbers, for example using the to_char
series of functions.
locale -a
.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | Locale listed using locale -a |
segments; system; restart |
Sets the area used to format dates and times, for example using the to_char
series function.
locale -a
.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | Locale listed using locale -a |
segments; system; restart |
Sets the time zone to display and interpret timestamps.
Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | GMT | time zone abbreviation | segments; restart |
Sets the collection of time zone abbreviations used in datetime input accepted by the server.- The supported option is the name of the configuration file stored in $GPHOME/share/postgresql/timezonesets/
, and you can also create your own files under this path. For example: To use a file custom
containing the default time zone and the WIB (Waktu Indonesia Barat) time zone.
Default
from directory $GPHOME/share/postgresql/timezonesets/
to file custom
. Add the WIB
time zone information in the file Asia.txt
to custom
.custom
to the $GPHOME/share/postgresql/timezonesets/
directory on the YMatrix database Master and Segment hosts.timezone_abbreviations
to custom
.mxstop -u
).Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
enum | Default | Default / Australia / India / | master; session; reload |
To load additional functions or to improve performance, multiple settings can be used to preload the shared library to the server. For example, the $libdir/mylib
setting may cause mylib.so
(or mylib.sl
on some platforms) to be preloaded from the installed standard library directory. The difference between these settings is when they take effect and the privileges required to change them.
You can preload YMatrix's procedural language library in this way, usually 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 in this way. Each library supported by YMatrix has a “magic block” that is checked to ensure compatibility. For this reason, non-YMatrix libraries cannot be loaded in this way. You may be able to load them using operating system tools such as LD_PRELOAD
.
In summary, please refer to the documentation for the specific module to load it using the recommended method.
This variable indicates the name of the JIT provider library to be used.
Data type | Default value | Setting category |
---|---|---|
string | llvmjit | segments;session;restart;superuser |
Any user can use this variable to specify one or more shared libraries to be preloaded at the start of the connection.
LOAD
command. Spaces between items are ignored. If you need to include spaces or commas in a library name, enclose the name in double quotes.plugins
subdirectory of the installed standard library directory (it is the database administrator's responsibility to ensure that only “safe” libraries are installed here).local_preload_libraries
can explicitly specify this directory, e.g., $libdir/plugins/mylib
, or simply specify the library name — mylib
and $libdir/plugins/mylib
have the same effect.LOAD
command. For this purpose, this parameter is typically set using the client's PGOPTIONS
environment variable or ALTER ROLE SET.session_preload_libraries
instead.Data type | Default value | Setting category |
---|---|---|
string | segments;system;restart |
Only superusers can use this variable to specify one or more shared libraries to be preloaded at the start of the connection.
LOAD
command. Spaces between items are ignored; if you need to include spaces or commas in a library name, enclose the name in double quotes.LOAD
command. For example, setting this parameter using ALTER ROLE SET can enable auto_explain
for all sessions under a given username.shared_preload_libraries
, loading a library at session startup offers no performance advantage over loading it when it is first used. However, this parameter has some advantages when using a connection pool.Data type | Default value | Setting category |
---|---|---|
string | segments;session;reload;superuser |
LOAD
command. Spaces between items are ignored. If you need to include spaces or commas in a library name, enclose the library name in double quotes.postmaster
starts, such as allocating shared memory, reserving lightweight locks, or starting background workers. These libraries must be loaded at server startup using this parameter.session_preload_libraries
.postmaster
starts, shared_preload_libraries
is still useful on Windows hosts.Data type | Default value | Setting category |
---|---|---|
string | segments;system;restart |
If you need to load a dynamically loaded module, and the filename specified in the CREATE FUNCTION
or LOAD
command does not include a directory path (i.e., the name does not contain “/”), the system will search this path to locate the required file.
dynamic_library_path
must be a list of absolute directory paths separated by colons (or semicolons on Windows). If a list element starts with a special string, $libdir
will be replaced with the directory of precompiled libraries in the PostgreSQL package. This is the module installation location provided by the PostgreSQL distribution (use pg_config --pkglibdir
to find the name of this directory).dynamic_library_path = '/usr/local/lib/postgresql:/home/my_project/lib:$libdir'
Or in a Windows environment:
dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir'
$libdir
. If the value is set to an empty string, automatic path search is turned off.postgresql.conf
configuration file.Data Type | Default Value | Value Range | Set Classification |
---|---|---|---|
string | $libdir | A colon-separated list of absolute directory paths | segments; system; restart |