Developer Options
allow_system_table_mods
Parameter description: Specifies whether the structure of a system catalog or the name of a system schema can be modified.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that the structure of the system catalog or the name of the system schema can be modified.
- off indicates that the structure of the system catalog or the name of the system schema cannot be modified.
Default value: off
You are advised not to change the default value of this parameter. If this parameter is set to on, system catalogs may be damaged and the database may fail to be started.
allow_create_sysobject
Parameter description: Specifies whether objects such as functions, stored procedures, and synonyms can be created or modified in the system schema. The system schema refers to the schema provided by the database after initialization, excluding the public schema. The OID of the system schema is usually smaller than 16384.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that initial users and system administrators can create or modify objects such as functions, stored procedures, and synonyms in the system schema. The sysadmin user has permissions to create or replace, alter, grant, and revoke system objects by default. For details about whether other users are allowed to create these objects, see the permission requirements of the corresponding schema.
- off indicates that all users are not allowed to create or modify objects such as functions, stored procedures, and synonyms in the system schema. The sysadmin user does not have permissions to create or replace, alter, grant, and revoke system objects by default.
Default value: on
debug_assertions
Parameter description: Specifies whether to enable various assertion checks. It can assist in debugging. When an exception or a crash occurs, enable this parameter to identify programming defects. To use this parameter, the macro USE_ASSERT_CHECKING must be defined (through the configure option --enable-cassert) during the GaussDB compilation.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that various assertion checks are enabled.
- off indicates that various assertion checks are disabled.
If you compile GaussDB with the assertion check enabled, debug_assertions is set to on by default.
Default value: off
ignore_checksum_failure
Parameter description: If this parameter is enabled, the system ignores the failure (but still generates an alarm). Continuing execution may result in breakdown, damaged data being transferred or saved, failure of data recovery from remote nodes, or other serious problems. You are advised not to modify the settings.
This is a SUSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that data check errors are ignored.
- off indicates that data check errors are reported.
Default value: off
ignore_system_indexes
Parameter description: Specifies whether to ignore system indexes when reading system catalog (but still update the indexes when modifying the tables).
This is a BACKEND parameter. Set it based on instructions provided in Table 1.
This parameter is useful for recovering data from tables whose system indexes are damaged.
Value range: Boolean
- on indicates that system indexes are ignored.
- off indicates that system indexes are not ignored.
Default value: off
post_auth_delay
Parameter description: Specifies the delay in the connection to the server after a successful authentication. Developers can attach a debugger to the server startup process.
This is a BACKEND parameter. Set it based on instructions provided in Table 1.
Value range: an integer ranging from 0 to 2147. The unit is s.
Default value: 0
This parameter is used only for commissioning and fault locating. To prevent impact on service running, ensure that the default value 0 is used in the production environment. If this parameter is set to a value other than 0, the cluster may be abnormal due to a long authentication delay.
pre_auth_delay
Parameter description: Specifies the period of delaying authentication after the connection to the server is started. Developers can attach a debugger to the authentication procedure.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
Value range: an integer ranging from 0 to 60. The unit is s.
Default value: 0
This parameter is used only for commissioning and fault locating. To prevent impact on service running, ensure that the default value 0 is used in the production environment. If this parameter is set to a value other than 0, the cluster may be abnormal due to a long authentication delay.
trace_notify
Parameter description: Specifies whether to enable the function of generating debugging output for the LISTEN and NOTIFY commands. The level of client_min_messages or log_min_messages must be debug1 or lower so that debugging output can be recorded in the client or server logs, respectively.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that the function is enabled.
- off indicates that the function is disabled.
Default value: off
trace_recovery_messages
Parameter description: Specifies whether to enable logging of recovery-related debugging output. This parameter allows users to overwrite the normal setting of log_min_messages, but only for specific messages. This is intended for the use in debugging the standby node.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
Value range: enumerated values. Valid values include debug5, debug4, debug3, debug2, debug1, and log. For details about the parameter values, see log_min_messages.
Default value: log
- log indicates that recovery-related debugging information will not be logged.
- Except the default value log, each of the other values indicates that recovery-related debugging information at the specified level will also be logged. Common settings of log_min_messages enable logs to be unconditionally recorded into server logs.
trace_sort
Parameter description: Specifies whether to print information about resource usage during sorting operations. This parameter is available only when the macro TRACE_SORT is defined during the GaussDB compilation. However, TRACE_SORT is currently defined by default.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that the function is enabled.
- off indicates that the function is disabled.
Default value: off
zero_damaged_pages
Parameter description: Specifies whether to detect a damaged page header that causes GaussDB to report an error, aborting the current transaction.
This is a SUSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- Setting this parameter to on causes the system to report a warning, zero out the damaged page, and continue processing. This behavior will destroy data, including all the rows on the damaged page. However, it allows you to bypass the error and retrieve rows from any undamaged pages that may be present in the table. Therefore, it is useful for restoring data if corruption has occurred due to a hardware or software error. In most cases, you are advised not to set this parameter to on if you want to restore data from damaged pages.
- If this parameter is set to off, the system does not fill zeros in damaged pages.
Default value: off
string_hash_compatible
Parameter description: Specifies whether to use the same method to calculate char-type hash values and varchar- or text-type hash values. Based on the setting of this parameter, you can determine whether a redistribution is required when a distribution key is converted from a char-type data distribution into a varchar- or text-type data distribution.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that the same calculation method is used and a redistribution is not required.
- off indicates that different calculation methods are used and a redistribution is required.
Calculation methods differ in the length of input strings used for calculating hash values. (For a char-type hash value, spaces following a string are not counted as the length. For a text- or varchar-type hash value, the spaces are counted.) The hash value affects the calculation result of queries. To avoid query errors, do not modify this parameter during database running once it is set.
Default value: off
remotetype
Parameter description: Specifies the remote connection type.
This is a BACKEND parameter. Set it based on instructions provided in Table 1.
Value range: enumerated values. Valid values are application, coordinator, datanode, gtm, gtmproxy, internaltool, and gtmtool.
Default value: application
max_user_defined_exception
Parameter description: Specifies the maximum number of exceptions.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: an integer. Currently, only the fixed value 1000 is supported.
Default value: 1000
enable_compress_spill
Parameter description: Specifies whether to enable the compression function of writing data to disk.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on or true indicates that optimization for writing data to disk is enabled.
- off or false indicates that optimization for writing data to a disk is disabled.
Default value: on
enable_parallel_ddl
Parameter description: Specifies whether multiple CNs can concurrently perform DDL operations on the same database object.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on: DDL operations can be concurrently performed without distributed deadlocks.
- off: DDL operations cannot be concurrently performed as distributed deadlocks may occur.
Default value: on
support_batch_bind
Parameter description: Specifies whether to batch bind and execute PBE statements through APIs such as JDBC, ODBC, and libpq.
Parameter type: Boolean.
Unit: none
Value range:
- on indicates that batch binding and execution are used.
- off indicates that batch binding and execution are not used.
Default value: on
Setting method: This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Retain the default value.
numa_distribute_mode
Parameter description: Specifies the distribution of some shared data and threads among NUMA nodes. This parameter is used to optimize the performance of large-scale Arm servers with multiple NUMA nodes. Generally, you do not need to set this parameter.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: a string. The valid values are none and all.
- none indicates that this function is disabled.
- all indicates that some shared data and threads are distributed to different NUMA nodes to reduce the number of remote access times and improve performance. Currently, this function applies only to Arm servers with multiple NUMA nodes. All NUMA nodes must be available for database processes. You cannot select only some NUMA nodes.
In the current version, numa_distribute_mode cannot be set to all on the x86 platform.
Default value: 'none'
log_pagewriter
Parameter description: Specifies whether to display the page refresh information of a thread and details about an incremental check point after the incremental check point is enabled. You are advised not to set this parameter to true because a large amount of information will be generated.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
Default value: off
advance_xlog_file_num
Parameter description: Specifies the number of Xlog files that are periodically initialized in advance in the background. This parameter is used to prevent the Xlog file initialization from affecting the performance during transaction commit. However, such a fault may occur only when the system is overloaded. Therefore, you do not need to set this parameter.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: an integer ranging from 0 to 1000000. The value 0 indicates that initialization is not performed in advance. For example, the value 10 indicates that the background thread periodically initializes 10 Xlog files in advance based on the write location of the current Xlog.
Default value: 0
comm_sender_buffer_size
Parameter description: Specifies the size of the buffer for each interaction between CNs and DNs and between DNs in the stream plan. In some cases, different values affect the stream performance. After the value is reset, the cluster needs to be restarted for the reset to take effect.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: an integer ranging from 1 to 1024. The unit is KB.
Default value: 8
ustore_attr
Parameter description: This parameter is used to control the information statistics of Ustore tables, rollback type, UB-tree index type, and data verification during the running of key modules (including data, indexes, rollback segments, and replay). This parameter helps R&D engineers locate faults.
Parameter type: string.
Unit: none
Value range: This parameter is set in key-value mode. The mapping between keys and values is as follows: If multiple key-value pairs are used, use semicolons (;) to separate them. For example, ustore_attr='ustore_verify_level=FAST;ustore_verify_module=UPAGE:UBTREE:UNDO:REDO'.
- ustore_verify_level: Specifies the verification level.
Value range: The value is case-insensitive. For details, see the following table.
Table 1 Parameter value meaning of ustore_verify_level Parameter Value
Description
NONE
NONE indicates that the verification function is disabled. You are advised to enable this function to test performance.
FAST
FAST indicates fast verification. The verification content is small and the impact on performance is minimized.
COMPLETE
COMPLETE indicates complete verification. The verification content is the largest and the performance is greatly affected.
Default value: FAST
- ustore_verify_module: Specifies a module that controls verification.
Value range: The value is case-insensitive. The value can be one or more of UPAGE, UBTREE, UNDO, REDO, and ROACH, or it can be ALL or NULL. When multiple values of UPAGE, UBTREE, UNDO, REDO, and ROACH are used, separate them with colons (:).For example, ustore_verify_module=UPAGE:UBTREE:UNDO:REDO.
When the ROACH module is enabled, the value of the ustore_verify_level parameter is ignored during the ROACH backup. By default, the level of verification is the highest and the performance is greatly affected. Therefore, exercise caution when using this parameter.
Table 2 Parameter value meaning of ustore_verify_module Parameter Value
Description
UPAGE
Indicates that data page verification is enabled.
UBTREE
Indicates that UB-tree index verification is enabled.
UNDO
Indicates that rollback segment data verification is enabled.
REDO
Indicates that data page verification for the REDO process is enabled.
ROACH
This parameter is discarded. The verification has been removed from the underlying logic. ustore_verify_module can be set to roach but it does not take effect.
ALL
Indicates that data verification for the UPAGE, UBTREE, UNDO, REDO, and ROACH modules is enabled.
NULL
Indicates that data verification for the UPAGE, UBTREE, UNDO, REDO, and ROACH modules is disabled.
Default value: UPAGE:UBTREE:UNDO
- index_trace_level: determines whether to enable index tracing and controls the printing level. After this function is enabled, information about index tuples that meet the conditions is printed based on the printing level during index scan.
Value range: The values are described in the following table.
Default value: NO
Table 3 Parameter value meaning of index_trace_level Parameter Value
Description
NO
No additional information is printed.
NORMAL
Information about visible index tuples is printed, including:
- ID and offset of the index page where the current index tuple is located
- Current tuple status
- TID and partOid corresponding to the current tuple
- xmin and xmax information corresponding to the current tuple
- Current tuple content (if enable_log_tuple is set to on).
VISIBILITY
On the basis of NORMAL, the information about the index tuples that do not pass the visibility check is printed and whether the index tuples are visible is marked.
SHOWHIKEY
On the basis of VISIBILITY, the system tries to print the information about the HIKEY tuple on the page.
ALL
Information about all tuples on the scanned index page is printed.
- enable_log_tuple: specifies whether to print the contents of related tuples when printing log-level prompts for troubleshooting and locating.
Value range: on or off (case-insensitive)
Default value: off
- enable_ustore_sync_rollback: specifies whether to enable synchronous rollback for Ustore tables.
Value range: Boolean
Default value: true
- enable_ustore_async_rollback: specifies whether to enable asynchronous rollback for Ustore tables.
Value range: Boolean
Default value: true
- enable_ustore_page_rollback: specifies whether to enable page rollback for Ustore tables.
Value range: Boolean
Default value: true
- enable_ustore_partial_seqscan: specifies whether to enable partial scan for Ustore tables.
Value range: Boolean
Default value: false
- enable_candidate_buf_usage_count: specifies whether to enable buffer usage statistics.
Value range: Boolean
Default value: false
- ustats_tracker_naptime: specifies the interval for collecting statistics on Ustore tables.
Value range: [1,INT_MAX/1000].
Default value: 20, in seconds.
- umax_search_length_for_prune: specifies the maximum search depth of the prune operation on the Ustore table.
Value range: [1,INT_MAX/1000]
Default value: 10
When setting ustore_attr, do not leave spaces or other characters before and after the equal sign (=) between key and value, for example, ustore_attr='ustore_verify_level = FAST;. If the kernel code verification detects that the parameter is invalid, the output shows success, but the setting does not take effect.
Default value: an empty string
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Exercise caution when setting the ustore_attr parameter. You are advised to modify this parameter with the assistance of engineers.
index_txntype
Parameter description: Determines whether the index type of UB-tree is PCR or RCR. PCR supports flashback query based on indexes, but RCR does not.
Parameter type: string.
Unit: none
Value range: 'PCR' or 'RCR'.
Default value: an empty string
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: You are advised to set it to "'RCR".
default_index_kind
Parameter description: Controls the default behavior of creating indexes.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: an integer. Currently, only the fixed values 0, 1, and 2 are supported.
- 0: The global partitioned index function is disabled for distributed deployment.
- 1: A local index is created by default.
- 2: A global index is created by default.
Default value: 2
You are advised not to change the default value of this parameter. Otherwise, the index validity may be affected.
enable_segment_remain_cleanup
Parameter description: Specifies which the residual segment-page cleanup feature is to be enabled.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on: indicates that the old type of residual segment-page cleanup is enabled.
- Query APIs: gs_stat_remain_segment_info and gs_local_stat_remain_segment_info.
- Cleanup APIs: gs_free_remain_segment and gs_local_free_remain_segment.
- off: indicates that the new type of residual segment-page cleanup is enabled.
- Query APIs: GS_SEG_SPC_REMAIN_SEGMENTS and GS_SEG_SPC_REMAIN_EXTENTS.
- Cleanup APIs: gs_seg_free_spc_remain_segment and gs_seg_free_spc_remain_extent.
Do not change the cleanup mode unless necessary. Otherwise, residual segment-page data may fail to be cleaned up or other exceptions may occur.
Default value: off
convert_illegal_char_mode
Parameter description: Specifies the placeholders of invalid characters that can be displayed on the client when the enable_convert_illegal_char parameter is enabled.
Parameter type: string
Unit: none
Value range: 95 characters whose decimal codes range from 32 to 126 in the ASCII coding table.
Default value: '?'
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none
default_segment
Parameter description: Specifies whether to create a segment-page table by default.
Parameter type: Boolean.
Unit: none
Value range:
- on: A segment-page table is created by default when the segment field is not specified.
- off: A page table is created by default when the segment field is not specified.
Default value: off
Setting method: This is a SUSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none.
- If --undostoragetype is set to 'page' or is not set during database initialization, the data of Ustore is forcibly stored in page mode, but Astore is not affected.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot