Updated on 2023-10-23 GMT+08:00

Fault Tolerance

This section describes parameters used for controlling how the server processes an error occurring in the database system.

exit_on_error

Parameter description: If this function is enabled, errors of the ERROR level will be upgraded to PANIC errors, and core stacks will be generated. It is mainly used to locate problems and test services.

This parameter is a USERSET parameter. Set it based on instructions provided in Table 2.

Value range: Boolean

  • on indicates that errors of the ERROR level will be upgraded to PANIC errors.
  • off indicates that errors of the ERROR level will not be upgraded.

Default value: off

restart_after_crash

Parameter description: If this parameter is set to on and a backend process crashes, GaussDB automatically reinitializes the backend process.

This parameter is a SIGHUP parameter. Set it based on instructions provided in Table 2.

Value range: Boolean

  • on maximizes the availability of the database.

    In some circumstances (for example, when a management tool, such as xCAT, is used to manage GaussDB), setting this parameter to on maximizes the availability of the database.

  • off indicates that a management tool is enabled to obtain control permission and take proper measures when a backend process crashes.

Default value: on

omit_encoding_error

Parameter description: If this parameter is set to on and the client character set of the database is encoded in UTF-8 format, character encoding conversion errors will be recorded in logs. Additionally, converted characters that have conversion errors will be ignored and replaced with question marks (?).

This parameter is a USERSET parameter. Set it based on instructions provided in Table 2.

Value range: Boolean

  • on indicates that characters that have conversion errors will be ignored and replaced with question marks (?), and error information will be recorded in logs.
  • off indicates that characters that have conversion errors cannot be converted and error information will be directly displayed.

Default value: off

If this parameter is modified by running the gs_guc reload command and the connection of a session on the current node is not from the client but from another node in the cluster to which the node belongs, this parameter does not take effect immediately on the session after the gs_guc reload command is executed. The setting takes effect only after the connection node is disconnected and then reconnected.

max_query_retry_times

The current feature is a lab feature. Contact Huawei technical support before using it.

Parameter description: Specifies the maximum number of retry attempts when an SQL statement error occurs. Currently, the error types that support retries are Connection reset by peer, Lock wait timeout, and Connection timed out. For details about complete error types, see "Cluster HA > Automatic Retry upon SQL Statement Execution Errors" in the GaussDB Kernel Troubleshooting. If it is set to 0, the retry function is disabled.

This parameter is a USERSET parameter. Set it based on instructions provided in Table 2.

Value range: an integer ranging from 0 to 20

Default value: 0

cn_send_buffer_size

Parameter description: Specifies the size of the data buffer used for data transmission on data on CNs.

This parameter is a POSTMASTER parameter. Set it based on instructions provided in Table 2.

Value range: an integer ranging from 8 to 128. The unit is KB.

Default value: 8KB

max_cn_temp_file_size

Parameter description: Specifies the maximum number of temporary files that can be used by the CN during automatic SQL statement retries. The value 0 indicates that no temporary file is used.

This parameter is a SIGHUP parameter. Set it based on instructions provided in Table 2.

Value range: an integer ranging from 0 to 10485760. The unit is KB.

Default value: 5GB

retry_ecode_list

Parameter description: Specifies the list of SQL error types that support automatic retries.

This parameter is a USERSET parameter. Set it based on instructions provided in Table 2.

Value range: a string

Default value: YY001 YY002 YY003 YY004 YY005 YY006 YY007 YY008 YY009 YY010 YY011 YY012 YY013 YY014 YY015 53200 08006 08000 57P01 XX003 XX009 YY016

data_sync_retry

Parameter description: Specifies whether to keep running the database when updated data fails to be written into disks by using the fsync function. In some OSs, no error is reported even if fsync fails after the second attempt. As a result, data is lost.

This parameter is a POSTMASTER parameter. Set it based on instructions provided in Table 2.

Value range: Boolean

  • on indicates that the database keeps running and fsync is executed again after fsync fails.
  • off indicates that a PANIC-level error is reported and the database is stopped after fsync fails.

Default value: off

remote_read_mode

Parameter description: Specifies whether to enable the remote read function. This function allows pages on the standby server to be read when reading pages on the primary server fails.

This parameter is a POSTMASTER parameter. Set it based on instructions provided in Table 1.

Value range: enumerated values

  • off indicates that the remote read function is disabled.
  • non_authentication indicates that the remote read function is enabled but certificate authentication is not required.
  • authentication indicates that the remote read function is enabled and certificate authentication is required.

Default value: authentication