Platform and Client Compatibility
Many platforms use the database system. External compatibility of the database system provides great convenience for platforms.
a_format_date_timestamp
Parameter description: Specifies whether to return the date and time.
In A-compatible mode, when a transaction is started, the functions current_date, current_timestamp, and localtimestamp return the timestamp when the current SQL statement is started.
Parameter type: Boolean.
Unit: none
Value range:
- on: Returns the timestamp when the current SQL statement is started.
- off: Returns the date or date and time when the transaction is started.
Default value: off
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Retain the default value. This parameter can be enabled when the system time needs to be returned when a transaction is started.
convert_string_to_digit
Parameter description: Specifies the implicit conversion priority, which determines whether to preferentially convert strings into numbers.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that strings are preferentially converted into numbers.
- off indicates that strings are not preferentially converted into numbers.
Default value: on
Adjusting this parameter will change the internal data type casting rule and cause unexpected behaviors. Exercise caution when performing this operation.
nls_timestamp_format
Parameter description: Specifies the default timestamp format.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: a string.
Default value: DD-Mon-YYYY HH:MI:SS.FF AM
nls_timestamp_tz_format
Parameter description: Specifies the default timestamp with time zone format.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: a string. The supported formats are the same as those of nls_timestamp_format.
Default value: DD-Mon-YYYY HH:MI:SS.FF AM
This parameter is valid only when a_format_version is set to 10c and a_format_dev_version is set to s1.
nls_nchar_characterset
Parameter description: Sets the national character set, which is used together with the nchr(cvalue int|bigint) system function. The value of this parameter is an enumerated string.
Parameter type: string.
Unit: none
Value range: 'AL16UTF16' and 'UTF8' (case-insensitive)
Default value: 'AL16UTF16'
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Retain the default value.
- The database does not support the national character set. This parameter is used only to be compatible with the A database and obtain the national character set for users.
- This GUC parameter applies only to the nchr(cvalue int|bigint) function.
group_concat_max_len
Parameter description: This parameter is used together with the GROUP_CONCAT function to limit the length of the return value. If the length exceeds the limit, the exceeded part of the return value is truncated.
Parameter type: integer.
Unit: none
Value range: 0 to 9223372036854775807. Currently, the maximum length that takes effect is 1073741823. If the length exceeds this limit, the out of memory error is reported.
Default value: 1024
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Retain the default value.
max_function_args
Parameter description: Specifies the maximum number of parameters allowed for a function.
This is a fixed INTERNAL parameter. It can be viewed but cannot be modified.
Value range: an integer.
Default value: 8192
max_subpro_nested_layers
Parameter description: Specifies the maximum nesting depth of nested subprograms.
Parameter type: integer.
Unit: none
Value range: 0 to 100
When this parameter is set to 0, nested subprograms are not allowed.
Default value: 3
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Set this parameter based on the maximum nesting depth.
transform_null_equals
Parameter description: Specifies whether expressions of the form expr = NULL (or NULL = expr) are treated as expr IS NULL. They return true if expr evaluates to the NULL value, and false otherwise.
- The correct SQL-standard-compliant behavior of expr = NULL is to always return NULL (unknown).
- Filtered forms in Microsoft Access generate queries that appear to use expr = NULL to test for null values. If you enable this option, you can use this API to access the database.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that expressions of the form expr = NULL (or NULL = expr) are treated as expr IS NULL.
- off indicates that expr = NULL always returns NULL (unknown).
Default value: off
New users are always confused about the semantics of expressions involving NULL values. Therefore, off is used as the default value.
support_extended_features
Parameter description: Specifies whether extended database features are supported.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that extended database features are supported.
- off indicates that extended database features are not supported.
Default value: off
enable_extension
Parameter description: Specifies whether to support the creation of database extensions.
Parameter type: Boolean.
Unit: none
Value range:
- on indicates that the creation of database extensions is supported.
- off indicates that the creation of database extensions is not supported.
Default value: off
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Retain the default value.
The extended function is for internal use only. You are advised not to use it.
sql_compatibility
Parameter description: Specifies the type of mainstream database with which the SQL syntax and statement behavior of the database is compatible. This is an INTERNAL parameter. It can be viewed but cannot be modified.
Value range: enumerated values
- A indicates that the database is compatible with the Oracle database.
- B indicates that the database is compatible with the MySQL database.
- C indicates that the database is compatible with the Teradata database.
- PG indicates that the database is compatible with the PostgreSQL database.
Default value: A
- This parameter can be set only when you run the CREATE DATABASE command to create a database. For details, see "SQL Reference > SQL Syntax > CREATE DATABASE" in Developer Guide.
- In the database, this parameter must be set to a specific value. It can be set to A or B and cannot be changed. Otherwise, the setting is not consistent with the database behavior.
b_format_behavior_compat_options
Parameter description: Specifies a B-compatible database configuration item.
Parameter type: string.
Unit: none
Value range: Currently, only B-compatible configuration items listed in Table 1 are supported. Use commas (,) to separate multiple compatibility configuration items, for example, set b_format_behavior_compat_options="enable_set_variables,set_session_transaction".
Default value: ""
If b_format_version is not set to '', b_format_behavior_compat_options will be set to all and cannot be modified.
Configuration Item |
Behavior |
---|---|
enable_set_variables |
Specifies whether to enable the enhancement of the SET syntax.
|
set_session_transaction |
Specifies whether to enable the SET SESSION TRANSACTION syntax.
|
enable_modify_column |
Specifies whether to enable the ALTER TABLE MODIFY syntax.
|
default_collation |
Specifies whether to enable forward compatibility of the default collation.
|
all |
Determines whether to enable all syntax. all cannot be specified together with other configuration items. In the table, specifying all configuration items except all that are separated by commas is equivalent to specifying all. |
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Determines whether some B-compatible features are available. If you want to modify this parameter, make sure you understand its meaning and modify it with caution to avoid risks caused by misoperations.
m_format_behavior_compat_options
Parameter description: Specifies the configuration items of an M-compatible database.
Parameter type: string.
Unit: none
Value range: Currently, only Table 2 are supported. Compatibility configuration items are separated by commas (,).
Default value: ""
Configuration Item |
Behavior |
---|---|
enable_escape_string |
Specifies whether escape character control is enabled.
|
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 2.
Setting suggestion: none.
behavior_compat_options
Parameter description: Specifies the database compatibility configuration item.
Parameter type: string.
Unit: none
Value range: Currently, only compatibility configuration items listed in Table 3 are supported. Use commas (,) to separate multiple compatibility configuration items, for example, set behavior_compat_options='end_month_calculate,display_leading_zero'.
Default value: "forbid_package_function_with_prefix, enable_bpcharlikebpchar_compare,enable_crosstype_integer_operator"
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Adjust the parameter value based on the database-compatible objects.
plsql_compile_check_options
Parameter description: Specifies the database compatibility configuration item.
Parameter type: string.
Unit: none
Value range: Currently, only compatibility configuration items listed in Table 4 are supported. Use commas (,) to separate multiple compatibility configuration items, for example, set plsql_compile_check_options='for_loop,outparam'.
Default value: ''
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none.
Configuration Item |
Behavior |
---|---|
for_loop |
Controls the behavior of the FOR_LOOP query statement in a stored procedure. When this parameter is set, if rec has been defined in the FOR rec IN query LOOP statement, the defined rec variable is not reused. Instead, a new variable is created. Otherwise, the defined rec variable is reused and no variable is created. (It is the same as proc_implicit_for_loop_variable and will be incorporated later.) |
outparam |
When the output parameter overloading condition is met, the output parameters are checked. If the output parameters are constant, an error is reported. |
plsql_expression_check |
If the plsql_expression_check parameter is enabled, the plpgsql_dependency parameter must also be enabled. It verifies full statements in functions, stored procedures, and packages. If an undefined object exists (for example, a table, variable, or function does not exist), an alarm is generated.
CAUTION:
The following is an example of the verification function:
CREATE OR REPLACE procedure proc1() AS var1 int; begin SELECT id into var1 from table1_not_exist limit 1;-- The table does not exist, and an alarm is generated. SELECT id into var1 from view1_not_exist limit 1;-- The view does not exist, and an alarm is generated. var1 := func_input1(func1_not_exist());-- The function does not exist, and an alarm is generated. var1 := pkg.var1_not_exist;-- The package variable does not exist, and an alarm is generated. end; /
The following command output indicates that the creation is successful and the alarm information is printed:
WARNING: compile failed when parse the query: select id from table1_not_exist limit 1, error info is relation "table1_not_exist" does not exist on datanode DETAIL: N/A CONTEXT: compilation of PL/SQL function "proc1" near line 3 WARNING: compile failed when parse the query: select id from view1_not_exist limit 1, error info is relation "view1_not_exist" does not exist on datanode DETAIL: N/A CONTEXT: compilation of PL/SQL function "proc1" near line 4 WARNING: compile failed when parse the query: SELECT func_input1(func1_not_exist()), error info is function func1_not_exist() does not exist DETAIL: N/A CONTEXT: compilation of PL/SQL function "proc1" near line 5 WARNING: compile failed when parse the query: SELECT pkg.var1_not_exist, error info is missing FROM-clause entry for table "pkg" DETAIL: N/A CONTEXT: compilation of PL/SQL function "proc1" near line 6 WARNING: Procedure created with compilation errors. CREATE PROCEDURE False alarms: Example 1: CREATE TABLE emp(deptno smallint, ename char(100), salary int); CREATE TABLE emp_back(deptno smallint, ename char(100), salary int); CREATE OR REPLACE PROCEDURE proc_200() As BEGIN for data in delete from emp returning * loop INSERT INTO emp_back values(data.deptno,data.ename,data.salary);-- This alarm is falsely reported. END LOOP; END; / WARNING: compile failed when parse the query: INSERT INTO emp_back values(data.deptno,data.ename,data.salary), error info is record "data" is not assigned yet when get datum type info DETAIL: N/A CONTEXT: compilation of PL/pgSQL function "proc_200" near line 4 WARNING: Procedure created with compilation errors. CREATE PROCEDURE
Example 2:
CREATE OR REPLACE procedure proc1() is BEGIN DROP TABLE if exists table1; CREATE TABLE table1(id int); INSERT INTO table1 values(1);-- The system incorrectly reports that table1 does not exist. END; / WARNING: compile failed when parse the query: insert into table1 values(1), error info is relation "table1" does not exist on datanode DETAIL: N/A CONTEXT: compilation of PL/SQL function "proc1" near line 2 WARNING: Procedure created with compilation errors. CREATE PROCEDURE The status of pg_object is invalid. SELECT object_type,valid from pg_object obj join pg_proc proc on obj.object_oid = proc.oid and proc.proname = 'proc1'; object_type | valid -------------+------- P | f (1 row) ALTER procedure proc1 compile; WARNING: compile failed when parse the query: insert into table1 values(1), error info is relation "table1" does not exist on datanode DETAIL: N/A CONTEXT: compilation of PL/SQL function "proc1" near line 5 WARNING: Procedure proc1 recompile with compilation errors. ALTER PROCEDURE SELECT object_type,valid from pg_object obj join pg_proc proc on obj.object_oid = proc.oid and proc.proname = 'proc1'; object_type | valid -------------+------- P | f (1 row) call proc1(); NOTICE: table "table1" does not exist, skipping CONTEXT: SQL statement "drop table if exists table1" PL/SQL function proc1() line 3 at SQL statement proc1 ------- (1 row) SELECT object_type,valid from pg_object obj join pg_proc proc on obj.object_oid = proc.oid and proc.proname = 'proc1'; object_type | valid -------------+------- P | t (1 row) When a function, stored procedure, or package is created or recompiled, the verification function is executed. If this alarm is falsely reported, the valid column of pg_object changes to false. In the execution phase, no verification is performed. When the execution is successful, the valid column of pg_object changes to true. |
a_format_version
Parameter description: Specifies the database platform compatibility configuration item. The value of this parameter is an enumerated string.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: a string.
Default value: ""
- Currently, only Table 5 is supported.
- Set a character string for the compatibility configuration item, for example, set a_format_version='10c'.
a_format_dev_version
Parameter description: Specifies the database platform minor version compatibility configuration item. The value of this parameter is an enumerated string.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: a string.
Default value: ""
- Currently, only Table 6 is supported.
- Set a character string for the compatibility configuration item, for example, set a_format_dev_version='s1'.
Configuration Item |
Behavior |
---|---|
s1 |
|
s2 |
|
s3 |
|
s4 |
|
s5 |
|
b_format_version
Parameter description: Specifies the database platform compatibility behavior configuration item that controls the forward compatibility in B-compatible mode.
- b_format_version takes effect only when sql_compatibility is set to B.
- If this parameter is set to a non-empty string, b_format_behavior_compat_options is set to 'ALL' and bytea_output parameter is set to 'escape' simultaneously. If this parameter is set to an empty string and takes effect, the b_format_behavior_compat_options and bytea_output are set to the original values.
Parameter type: string.
Unit: none
Value range: an empty string '' or '5.7'
Default value: an empty string ''
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1 GUC parameters.
Setting suggestion: none.
b_format_dev_version
Parameter description: Specifies the database platform minor version compatibility configuration item.
b_format_dev_version takes effect only when sql_compatibility is set to B and b_format_version is set to 5.7.
Parameter type: string.
Unit: none
Value range: an empty string '' or a compatibility configuration item in Table 7.
Configuration Item |
Behavior |
---|---|
s1 |
|
s2 |
The compatibility behavior controlled by s1 is included. In addition, the following impacts are included:
|
Default value: an empty string ''
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1 GUC parameters.
Setting suggestion: none.
m_format_dev_version
Parameter description: Specifies the database platform minor version compatibility configuration item.
m_format_dev_version takes effect only when sql_compatibility is set to M.
Parameter type: string.
Unit: none
Value range: an empty string '' or a compatibility configuration item in Table 8.
Configuration Item |
Behavior |
---|---|
s1 |
The following syntax is influenced:
|
Default value: an empty string ''
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1 GUC parameters.
Setting suggestion: none.
sql_mode
Parameter description: Specifies the SQL behavior control configuration item in B-compatible and M-compatible modes.
sql_mode takes effect when sql_compatibility is set to B, b_format_version is set to '5.7', and b_format_dev_version is set to 's1', or when sql_mode takes effect only when sql_compatibility is set to M.
Parameter type: string.
Unit: none
Value range:
An empty string '' or a value in the range of 'strict_trans_tables,only_full_group_by,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution,pad_char_to_full_length,no_auto_value_on_zero' in B-compatible mode.
In M-compatible mode, the parameters supported in B-compatible mode, no_unsigned_subtraction, ansi_quotes, allow_invalid_dates, and real_as_float are supported.
The meaning of each option value is described in Table 9.
Configuration Item |
Behavior |
B-compatible Parameter Configuration |
M-compatible Parameter Configuration |
---|---|---|---|
strict_trans_tables |
If this parameter is set, its format and range are strictly verified. If an invalid value is entered or the value exceeds the range, an error is reported during parsing. If this parameter is not set, the format and range of the input parameter are loosely verified. If an invalid value is entered or the value exceeds the range, a warning is reported during parsing and the value 0 of the corresponding data is returned. |
It can be set and canceled independently. |
It can be set and canceled independently. |
only_full_group_by |
Projection columns that contain non-GROUP BY keys and that are not constants and aggregate functions are not allowed. |
It can be set and canceled independently, but it does not take effect. |
It can be set and canceled independently. |
no_zero_in_date |
The year, month, and day of the DATE cannot be 0. |
It can be set and canceled independently, but it does not take effect. |
It can be set and canceled independently. |
no_zero_date |
The value of DATE cannot be 0 (0000-00-00). |
It can be set and canceled independently, but it does not take effect. |
It can be set and canceled independently. |
error_for_division_by_zero |
The value cannot be divided by 0. |
It can be set and canceled independently, but it does not take effect. |
It can be set and canceled independently. |
no_auto_create_user |
This item has no actual function. It is used only for compatibility that an error is not reported when the SET SQL_MODE statement contains this option. |
It can be set and canceled independently. |
It can be set and canceled independently. |
no_engine_substitution |
This item has no actual function. It is used only for compatibility that an error is not reported when the SET SQL_MODE statement contains this option. |
It can be set and canceled independently. |
It can be set and canceled independently. |
pad_char_to_full_length |
Be used for formatted output of CHAR columns in a table. If there are CHAR columns, a string with spaces at the end is output. Otherwise, a string without spaces at the end is output. |
It can be set and canceled independently. |
It can be set and canceled independently. |
no_auto_value_on_zero |
If this option is included, the value 0 inserted into the AUTO_INCREMENT column does not trigger auto-increment. |
It can be set and canceled independently. |
It can be set and canceled independently. |
no_unsigned_subtraction |
Unsigned numbers cannot be subtracted. If unsigned integers are subtracted and the result is negative, an error is returned. |
It can be set and canceled independently, but it does not take effect. |
It can be set and canceled independently. |
ansi_quotes |
ANSI_QUOTES mode is enabled. In this mode, double quotation marks are treated as identifier quotes rather than string quotes, and you must quote the entire name of a table or column with double quotation marks instead of backquotes. |
It can be set and canceled independently, but it does not take effect. |
It can be set and canceled independently. |
allow_invalid_dates |
If this option is enabled, MySQL allows invalid dates to be inserted, for example, '0000-00-00'. |
It can be set and canceled independently, but it does not take effect. |
It can be set and canceled independently. |
real_as_float |
By default, the REAL type is regarded as the DOUBLE type. If this option is enabled, the REAL type is regarded as the FLOAT type. |
It can be set and canceled independently, but it does not take effect. |
It can be set and canceled independently. |
Default value: 'strict_trans_tables,only_full_group_by,no_zero_in_date,no_zero_date,error_for_division_by_zero,no_auto_create_user,no_engine_substitution'
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none.
auto_increment_increment
Parameter description: Specifies the auto-increment step of an auto-increment column. The auto-increment value is calculated by the following formula: auto_increment_offset + N × auto_increment_increment. N is a positive integer. If the parameter value is smaller than that of auto_increment_offset, an error occurs when the values in the auto-increment column automatically increase.
Parameter type: integer.
Unit: none
Value range: 1 to 65535
Default value: 1
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none.
auto_increment_offset
Parameter description: Specifies the initial value of an auto-increment column. The auto-increment value is calculated by the following formula: auto_increment_offset + N × auto_increment_increment. N is a positive integer. If the parameter value is greater than that of auto_increment_increment, an error occurs when the values in the auto-increment column automatically increase.
Parameter type: integer.
Unit: none
Value range: 1 to 65535
Default value: 1
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none.
auto_increment_cache
Parameter description: Specifies the number of reserved auto-increment cache values when auto-increment is triggered by batch insertion or import of auto-increment columns. When auto-increment values are reserved, the auto-increment counter value is updated to the maximum auto-increment cache value. Before the cache values are used up, the auto-increment counter value remains unchanged, and the triggered auto-increment uses the cache values.
- The reserved cache values are valid only in the statement. If the reserved auto-increment cache values are used up and subsequent INSERT statements trigger auto-increment based on the auto-increment counter, the values in the auto-increment column in the table are discontinuous.
- When auto-increment is triggered by parallel import or insertion of auto-increment columns, the cache value reserved for each parallel thread is used only in the thread. If the cache value is not used up, the values of auto-increment columns in the table are discontinuous.
- When you add an auto-increment column to a table with data or modify a column to an auto-increment column, the existing data triggers auto-increment. The reserved auto-increment cache value is also affected by this parameter.
- This parameter does not affect the auto-increment column in the local temporary table.
- This parameter is valid only when b_format_version is set to '5.7' and b_format_dev_version is set to 's2'.
Default value: 0
Parameter type: integer.
Unit: none
Value range: 0 to INT_MAX
- If this parameter is set to 0, the auto-increment cache values are automatically reserved.
- When auto-increment is triggered for the first time, if the number of rows to be inserted into the auto-increment column is known, the number is the reserved value.
For example, the number of rows to be inserted cannot be obtained as the value of auto-increment that is triggered by INSERT INTO table SELECT ... or COPY FROM. When the ALTER TABLE statement is executed to rewrite table data, if auto-increment is triggered, reltuples in the statistics is used as the number of rows to be reserved. INSERT INTO table VALUES(...),(...),... is distributed to different DNs. Therefore, in some execution plans, DNs cannot obtain the number of rows to be inserted.
- If the number of rows is unknown, 2^n values are reserved each time. For example, one value is reserved in the first auto-increment, two values are reserved in the second auto-increment, four values are reserved in the third auto-increment, and eight values are reserved for in fourth auto-increment. However, if the number of reserved values exceeds 65535, 65535 values are reserved.
- When auto-increment is triggered for the first time, if the number of rows to be inserted into the auto-increment column is known, the number is the reserved value.
- If this parameter is not set to 0, the number of reserved cache values is the value of this parameter.
- When auto-increment is triggered for the first time, if the number of rows to be inserted into the auto-increment column is known, the number is the reserved value.
- If the number of rows is unknown, the value of auto_increment_cache is the number of auto-increment values reserved each time.
Default value: 0
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: The default value is recommended. However, if the auto-increment values are discontinuous in this case, you can adjust the parameter value based on the amount of data to be inserted in batches. Setting this parameter to a larger value improves the batch insertion performance but the auto-increment values are more likely to be discontinuous.
disable_keyword_options
Parameter description: Specifies database compatibility behavior. Multiple items are separated by commas (,). An identifier with this parameter set will not be used as a keyword.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range (non-M-compatible mode): a string. The following keywords are supported: auto_increment, change, charset, columns, compile, completion, containing, convert, csn, datetime, db4aishot, dbtimezone, discard_path, distributed, dumpfile, ends, entityescaping, escaped, evalname, event, events, expdp, extend, gsiusable, gsivalid, gsiwaitall, finish, ilm_pidx_list, impdp, ifnull, invisible, json_object, lines, link, lnnvl, load_discard, locked, mark, nocache, noentityescaping, noextend, noscale, nvl2, ordinality, outfile, performance, pivot, public, recover, regexp_like, scale, schedule, separator, sessiontimezone, shrink, slave, specification, starting, starts, subpartitions, substr, unpivot, verify, visible, wellformed, xmltype, regexp, rlike, and zerofill.
Default value (non-M-compatible mode): "datetime,regexp,rlike,zerofill".
Value range (M-compatible mode): a string. The following keywords are supported: active, admin, array, authentication, buckets, bulk, challenge_response, clone, component, cume_dist, definition, dense_rank, description, empty, enforced, engine_attribute, except, exclude, factor, failed_login_attempts, finish, first_value, following, generate, geomcollection, get_master_public_key, get_source_public_key, grouping, groups, gtid_only, histogram, history, inactive, initial, initiate, intersect, invisible, json_table, json_value, keyring, lag, last_value, lateral, lead, locked, master_compression_algorithms, master_public_key_path, master_tls_ciphersuites, master_zstd_compression_level, member, nested, nowait, nth_value, ntile, nulls, of, off, oj, old, optional, ordinality, organization, others, over, password_lock_time, path, percent_rank, persist, persist_only, preceding, privilege_checks_user, process, random, rank, recursive, reference, registration, replica, replicas, require_row_format, resource, respect, restart, retain, returning, reuse, role, row_number, secondary, secondary_engine, secondary_engine_attribute, secondary_load, secondary_unload, skip, source_auto_position, source_bind, source_compression_algorithms, source_connect_retry, source_delay, source_heartbeat_period, source_host, source_log_file, source_log_pos, source_password, source_port, source_public_key_path, source_retry_count, source_ssl, source_ssl_ca, source_ssl_capath, source_ssl_cert, source_ssl_cipher, source_ssl_crl, source_ssl_crlpath, source_ssl_key, source_ssl_verify_server_cert, source_tls_ciphersuites, source_tls_version, source_user, source_zstd_compression_level, srid, stream, system, thread_priority, ties, tls, unbounded, unregister, url, vcpu, visible, window, zone, lc_collate, least, load_bad, load_discard, location, minvalue, move, nocycle, node, nomaxvalue, nominvalue, nvl, nvl2, oids, operator, owned, prepared, recyclebin, reindex, reject, relative, scroll, sequence, setof, shippable, size, slice, smalldatetime, smalldatetime_format, split, stable, stdin, stdout, strict, substring, sysdate, trim, unusable, vacuum, valid, varchar2, verbose, version, within, xmlattributes, xmlconcat, xmlelement, xmlforest, xmlpi, xmlroot, and xmltype.
Default value (M-compatible mode): ""
If this parameter is enabled, some functions used as keywords will become invalid. Exercise caution when setting this parameter.
disable_plsql_keyword_options
Parameter description: Specifies the database compatibility behavior, that is, whether to use an identifier as a non-keyword. Values of this parameter are separated by commas (,).
Parameter type: string.
Unit: none
- PIPE
- PIPELINED
- RANGE
- REPLACE
- SUBTYPE
- ''
Default value: ''
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none
- If this parameter is enabled, some functions used as keywords will become invalid. Exercise caution when setting this parameter.
- To cancel the function of shielding the PL/SQL keyword, leave this parameter empty.
plpgsql.variable_conflict
Parameter description: Sets the priority of using stored procedure variables and table columns with the same name.
This is a USERSET parameter. Set it based on method 3 provided in Table 1.
Value range: a string.
- error indicates that a compilation error is reported when the name of a stored procedure variable is the same as that of a table column.
- use_variable indicates that if the name of a stored procedure variable is the same as that of a table column, the variable is used preferentially.
- use_column indicates that if the name of a stored procedure variable is the same as that of a table column, the column name is used preferentially.
Default value: error
td_compatible_truncation
Parameter description: Specifies whether to enable features compatible with a Teradata database. You can set this parameter to on when connecting to a database compatible with the Teradata database, so that when you perform the INSERT operation, overlong strings are truncated based on the allowed maximum length before being inserted into char- and varchar-type columns in the target table. This ensures all data is inserted into the target table without errors reported.
The string truncation function cannot be used if the INSERT statement includes a foreign table.
If inserting multi-byte character data (such as Chinese characters) to database with the character set byte encoding (such as SQL_ASCII or LATIN1), and the character data crosses the truncation position, the string is truncated based on its bytes instead of characters. Unexpected result will occur in tail after the truncation. If you want correct truncation result, you are advised to adopt encoding set such as UTF8, which has no character data crossing the truncation position.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that overlong strings are truncated.
- off indicates that overlong strings are not truncated.
Default value: off
uppercase_attribute_name
Parameter description: Specifies whether to return column names in uppercase to the client. This parameter is used only in the A-compatible mode and centralized environment.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that column names are returned to the client in uppercase.
- off indicates that column names are not returned to the client in uppercase.
Default value: off
character_set_connection
Parameter description: Specifies the character set of constant strings. If this parameter is modified, collation_connection is changed to the default collation of the character set.
- This parameter takes effect when sql_compatibility is set to 'B', b_format_version is set to '5.7', and b_format_dev_version is set to 's2'.
- This parameter takes effect in M-compatible mode.
Parameter type: character
Unit: none
Value range:
- Character sets supported when sql_compatibility is set to 'B'. For details, see "COLLATE collation" in "SQL Reference > SQL Syntax > C > CREATE TABLE" in Developer Guide.
- Character sets within the value range supported in M-compatible mode. For details, see "SQL Reference > Character Set and Collation" in the M-compatibility Development Guide.
- Currently, the value cannot be different from that of the current database character set.
Default value: same as the value of server_encoding.
Setting method: This is a USERSET parameter, which can only be set using method 3, and cannot be set using the guc tools. For details about how to set this parameter, see Table 1.
Setting suggestion: none.
collation_connection
Parameter description: Specifies the collation of a constant string. If this parameter is modified, character_set_connection is changed to the default character set of the collation.
- This parameter takes effect when sql_compatibility is set to 'B', b_format_version is set to '5.7', and b_format_dev_version is set to 's2'.
- This parameter takes effect in M-compatible mode.
Parameter type: character
Unit: none
Value range:
- Character sets supported when sql_compatibility is set to 'B'. For details, see "COLLATE collation" in "SQL Reference > SQL Syntax > C > CREATE TABLE" in Developer Guide.
- Character sets within the value range supported in M-compatible mode. For details, see "SQL Reference > Character Set and Collation" in the M-compatibility Development Guide.
- Currently, this parameter cannot be set to a value other than the collation corresponding to the current database character set.
Default value: default collation of the current server_encoding. If there is no default collation, the value is 'default'.
Setting method: This is a USERSET parameter, which can only be set using method 3, and cannot be set using the guc tools. For details about how to set this parameter, see Table 1.
Setting suggestion: none.
character_set_results
Parameter description: Specifies the character set of the returned result.
- This parameter takes effect when sql_compatibility is set to 'B', b_format_version is set to '5.7', and b_format_dev_version is set to 's2'.
- This parameter takes effect in M-compatible mode.
Parameter type: character
Unit: none
Value range:
- Character sets supported when sql_compatibility is set to 'B'. For details, see "COLLATE collation" in "SQL Reference > SQL Syntax > C > CREATE TABLE" in Developer Guide.
- Character sets within the value range supported in M-compatible mode. For details, see "SQL Reference > Character Set and Collation" in the M-compatibility Development Guide.
- You can also set this parameter to null or ''. In this case, the character set of the database is output.
Default value: same as the value of server_encoding.
Setting method: This is a USERSET parameter, which can only be set using method 3, and cannot be set using the guc tools. For details about how to set this parameter, see Table 1.
Setting suggestion: none.
lastval_supported
Parameter description: Specifies whether the lastval function can be used.
This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on indicates that the lastval function can be used and the nextval function cannot be pushed down.
- off indicates that the lastval function cannot be used and the nextval function can be pushed down.
Default value: off
enable_copy_error_log
Parameter description: Enables or disables the error table pgxc_copy_error_log.
Parameter type: Boolean.
Unit: none
Value range:
- on: indicates that the error table is enabled.
- off: indicates that the error table is disabled.
Default value: off
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none.
loader_support_nul_character
Parameter description: Specifies the database platform minor version compatibility configuration item.
Parameter type: string.
Unit: none
Value range: '', 's1', and 's2'. For details, see Table 11.
Default value: ''
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: none.
- This GUC parameter needs to be set when gs_loader is used to enable fault tolerance for NUL characters (0x00).
- For details, see "Client Tools > gs_loader" in Tool Reference.
Configuration Item |
Behavior |
---|---|
s1 |
Specifies how gs_loader processes NUL characters in data files during data import. If a data file contains the NUL character, the data is truncated based on the position of the NUL character. The data before the NUL character is imported to the table, and the data after the NUL character is truncated and discarded. This is used for forward compatibility of the function. |
s2 |
Specifies how gs_loader processes NUL characters in data files during data import. If a data file contains the NUL character, the NUL character is converted to the space character ' ' (0x20), and then processed, determined, and imported. |
Empty |
The default parameter settings do not affect any functions. |
a_format_copy_version
Parameter description: Specifies the database platform minor version compatibility configuration item. The value of this parameter is an enumerated string.
This is a USERSET parameter. Set it based on instructions provided in Table 1. When using gs_loader to import new features, you need to set the corresponding values.
Value range: a string.
Default value: ''
- Currently, only Table 11 is supported.
- Supports setting character string for compatibility configuration. For details, see "Client Tools > gs_loader" in Tool Reference. You can set the a_format_copy_version parameter by using guc_param.
Configuration Item |
Behavior |
---|---|
s1 |
|
enable_volatile_match_index
Parameter description: Specifies whether volatile functions can match indexes. This parameter is valid only when DBCOMPATIBILITY is set to A. There are semantic risks when the volatile function matches indexes. The stable and immutable functions can match indexes by default and comply with semantics. It is strongly recommended that you set this parameter based on the actual variability of the function instead of enabling this parameter.
This is a SUSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on: enabled.
- off: disabled.
Default value: off
enable_union_all_order
Parameter description: Specifies whether UNION ALL supports subquery order preserving when the main query is not sorted.
This is a USERSET parameter. Set it based on instructions provided in Table 1.
Value range: Boolean
- on: enabled.
- off: disabled.
Default value: on
enable_immutable_optimization
Parameter description: Specifies whether immutable functions can be optimized. This parameter is valid only when DBCOMPATIBILITY is set to A. If a function with the immutable definition violates the immutable semantics, the call result, value, and impact on the caller are not defined.
Parameter type: Boolean.
Unit: none
Value range:
- on: enabled.
- off: disabled.
Default value: on
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 2.
Setting suggestion: none.
enable_object_special_character
Parameter description: Determines whether the value of the schema parameter in the control file can contain any special characters in ["$'\] when the CREATE EXTENSION statement is executed and "@extschema@" is used in the script file.
This is a SIGHUP parameter. Set it based on instructions provided in Table 2.
Value range: Boolean
- on indicates that the value can contain any special characters in ["$'\].
- off indicates that the value cannot contain any special characters in ["$'\].
Default value: off
The extended function is for internal use only. You are advised not to use it.
a_format_disable_func
Parameter description: Disables a specified system function. The value of this parameter consists of multiple system function OIDs separated by commas (,). The system function for which this parameter is set cannot be called.
When a system function cannot meet user requirements and a user-defined function with the same name is required, you can use this function.
Parameter type: string.
Unit: none
Value range: a string consisting of multiple system function OIDs separated by commas (,).
This parameter can only be used to disable added system functions corresponding to the database platform compatibility behavior configuration items (a_format_version and a_format_dev_version). For details, see Table 12.
Database Platform Compatibility Configuration Item |
System Function That Can Be Disabled |
---|---|
10c,s1 |
anyarray array_extendnull(anyarray,int4,int4); -- funcoid: 6018 clob empty_clob(); -- funcoid: 3825 int4 instrb(text,text); -- funcoid: 3240 int4 instrb(text,text,int4); -- funcoid: 3241 int4 instrb(text,text,int4,int4); -- funcoid: 3242 numeric months_between(timestamp,timestamp); -- funcoid: 1522 timestamp round(timestamp); -- funcoid: obtains the OID by using the select oid from pg_proc where proname='round' and pronamespace=11 and pronargs=1 and allargtypes[0]=1114 query statement. timestamp round(timestamp,text); -- funcoid: 4465 timestamp to_date(text,text,bool); -- funcoid: 1524 timestamp to_date(text,text,text,bool); -- funcoid: 1525 numeric to_number(text,text,bool); -- funcoid: 1787 numeric to_number(text,text,text,bool); -- funcoid: 1788 timestamp to_timestamp(text,text,bool); -- funcoid: 606 timestamp to_timestamp(text,text,text,bool); -- funcoid: 607 timestamptz to_timestamp_tz(text); -- funcoid: 1806 timestamptz to_timestamp_tz(text,text); -- funcoid: 1807 timestamptz to_timestamp_tz(text,text,bool); -- funcoid: 1808 timestamptz to_timestamp_tz(text,text,text,bool); -- funcoid: 1809 |
10c,s2 |
text DBTimezone(); -- funcoid: 5562 int8 ascii2(text); -- funcoid: 1625 text asciistr(text); -- funcoid: 1626 text asciistr(blob); -- funcoid: 1629 int4 bit2coding(text); -- funcoid: 9311 int4 bit4coding(text); -- funcoid: 9325 float8 cosh(float8); -- funcoid: 1548 numeric cosh(numeric); -- funcoid: 1549 timestamptz current_timestamp(numeric); -- funcoid: 3257 text dump(any); -- funcoid: 9086 text dump(any,int4); -- funcoid: 9088 text dump(any,int4,int4); -- funcoid: 9089 text dump(any,int4,int4,int4); -- funcoid: 9090 float4 nanvl(float4,float4); -- funcoid: 7112 float4 nanvl(float4,numeric); -- funcoid: 7115 float8 nanvl(float8,float8); -- funcoid: 7113 float4 nanvl(numeric,float4); -- funcoid: 7116 numeric nanvl(numeric,numeric); -- funcoid: 7114 timestamp new_time(timestamp,text,text); -- funcoid: 374 text nls_lower(text); -- funcoid: 4082 text nls_lower(text,text); -- funcoid: 4083 text nls_upper(text); -- funcoid: 4084 text nls_upper(text,text); -- funcoid: 4085 interval numtoyminterval(numeric,text); -- funcoid: 9333 int8 ora_hash(any); -- funcoid: 6127 int8 ora_hash(any,int8); -- funcoid: 6128 text rawtohex2(any); -- funcoid: 9540 numeric remainder(int8,int8); -- funcoid: 9767 numeric remainder(int2,int2); -- funcoid: 9765 numeric remainder(int4,int4); -- funcoid: 9766 float4 remainder(float4,float4); -- funcoid: 9771 float4 remainder(float4,numeric); -- funcoid: 9768 float8 remainder(float8,float8); -- funcoid: 9770 float4 remainder(numeric,float4); -- funcoid: 9769 numeric remainder(numeric,numeric); -- funcoid: 9761 numeric remainder(int1,int1); -- funcoid: 9764 text session_time_zone(); -- funcoid: 9571 float8 sinh(float8); -- funcoid: 1546 numeric sinh(numeric); -- funcoid: 1547 timestamp sys_extract_utc(timestamp); -- funcoid: 5258 timestamp sys_extract_utc(timestamptz); -- funcoid: 5259 float8 tanh(float8); -- funcoid: 9762 numeric tanh(numeric); -- funcoid: 9763 float8 to_binary_double(text); -- funcoid: 9669 float8 to_binary_double(text,text); -- funcoid: 9670 float8 to_binary_double(text,text,bool); -- funcoid: 9671 float8 to_binary_double(text,text,text,bool); -- funcoid: 9672 float4 to_binary_float(text); -- funcoid: 9673 float4 to_binary_float(text,text); -- funcoid: 9674 float4 to_binary_float(text,text,bool); -- funcoid: 9675 float4 to_binary_float(text,text,text,bool); -- funcoid: 9676 blob to_blob(any); -- funcoid: 6990 interval to_dsinterval(text); -- funcoid: 9126 interval to_dsinterval(text,text,bool); -- funcoid: 9127 text to_multi_byte(text); -- funcoid: 9537 text to_multi_byte(blob); -- funcoid: 9539 varchar to_nchar(int8); -- funcoid: obtains the OID by using the select oid from pg_proc where proname='to_nchar' and pronamespace=11 and pronargs=1 and allargtypes[0]=20 query statement. varchar to_nchar(int2); -- funcoid: obtains the OID by using the select oid from pg_proc where proname='to_nchar' and pronamespace=11 and pronargs=1 and allargtypes[0]=21 query statement. varchar to_nchar(int4); -- funcoid: obtains the OID by using the select oid from pg_proc where proname='to_nchar' and pronamespace=11 and pronargs=1 and allargtypes[0]=23; query statement. text to_nchar(text); -- funcoid: obtains the OID by using the select oid from pg_proc where proname='to_nchar' and pronamespace=11 and pronargs=1 and allargtypes[0]=25 query statement. varchar to_nchar(float4); -- funcoid: obtains the OID by using the select oid from pg_proc where proname='to_nchar' and pronamespace=11 and pronargs=1 and allargtypes[0]=700 query statement. varchar to_nchar(float8); -- funcoid: obtains the OID by using the select oid from pg_proc where proname='to_nchar' and pronamespace=11 and pronargs=1 and allargtypes[0]=701 query statement. varchar to_nchar(numeric); -- funcoid: obtains the OID by using the select oid from pg_proc where proname='to_nchar' and pronamespace=11 and pronargs=1 and allargtypes[0]=1700 query statement. text to_nchar(timestamp); -- funcoid: 5698 text to_nchar(timestamptz); -- funcoid: 5699 text to_nchar(anyset); -- funcoid: 5700 text to_nchar(int8,text); -- funcoid: 5694 text to_nchar(int4,text); -- funcoid: 5693 text to_nchar(float4,text); -- funcoid: 5695 text to_nchar(float8,text); -- funcoid: 5696 text to_nchar(timestamp,text); -- funcoid: 5697 text to_nchar(timestamptz,text); -- funcoid: 5691 text to_nchar(interval,text); -- funcoid: 5690 text to_nchar(numeric,text); -- funcoid: 5692 text to_single_byte(text); -- funcoid: 9536 text to_single_byte(blob); -- funcoid: 9538 interval to_yminterval(text); -- funcoid: 9124 interval to_yminterval(text,text,bool); -- funcoid: 9125 text tz_offset(text); -- funcoid: 706 text unistr(text); -- funcoid: 9081 text unistr(blob); -- funcoid: 9082 int4 vsize(any); -- funcoid: 9083 |
10c,s4 |
clob getclobval(xml); -- funcoid: 8011 varchar getstringval(xml); -- funcoid: 6976 nvarchar2 nchr(int8); -- funcoid: 1694 timestamptz to_timestamp_tz(text,text,text); -- funcoid: 1804 timestamptz to_timestamp_tz(text,text,text,text,bool); -- funcoid: 1805 |
Default value: ''
Setting method: This is a SUSET parameter. Set it based on instructions provided in Table 2.
Setting suggestion: If the database platform compatibility behavior configuration items (a_format_version and a_format_dev_version) are disabled, the corresponding added system functions are unavailable by default. You do not need to use this parameter to disable the functions.
enable_convert_illegal_char
Parameter description: Specifies whether invalid characters in the command output are not verified and are displayed as placeholders.
Parameter type: Boolean.
Unit: none
Value range:
- on: The parameter is enabled. Special characters are replaced by the symbols specified by the convert_illegal_char_mode parameter during query.
- off: The parameter is disabled. If the query result contains characters that do not comply with the current character set encoding rule, an error is reported after verification.
Default value: off
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 2.
Setting suggestion: Retain the default value. Enable this parameter only when the data contains special characters and errors should not be reported for special characters.
- When the database character set is utf8, zhs16gbk, gb18030, gb18030-2022, or latin1, enable_convert_illegal_char = on takes effect. If the character set of the database client is different from that of the database server, invalid characters are displayed as placeholders.
- Special character range: The special characters mentioned in this document include only fully abnormal encoding and hybrid encoding. The \u0000 character is not supported. If the character code contains the \u0000 character, the character is truncated at \u0000, which affects data integrity.
- If the character sets of the database client and server are different, special characters beyond the character set of the server can be written to the database only by using the dbe_raw.cast_to_varchar2() function or the import and export tool.
- When the GUC parameter is enabled, the behaviors of the special characters in the functions and advanced package functions listed in the following table are as follows:
- When the character sets of the client and server are the same, no error is reported during the query of special characters. The behavior is the same as that before the GUC parameter is enabled.
- If the character sets of the client and server are different, special characters are displayed as placeholders, which use question marks (?) by default.
- You are advised not to use functions to process character strings that contain special characters. The functions listed in the following table do not report errors when processing character strings that contain special characters, and the correctness of the results cannot be ensured.
No. |
Function Name/Advanced Package Function Name |
---|---|
1 |
bit_length(string) |
2 |
btrim(string text [, characters text]) |
3 |
char_length(string) character_length(string) |
4 |
chr(cvalue int|bigint) chr(integer) |
5 |
concat(str1,str2) |
6 |
concat_ws(sep text, str"any" [, str"any" [, ...] ]) |
7 |
decode(string text, format text) |
8 |
dump(expr[, return_fmt [, start_position [, length ] ] ]) |
9 |
encode(data bytea, format text) |
10 |
find_in_set(text, set) |
11 |
format(formatstr text [, str"any" [, ...] ]) |
12 |
left(str text, n int) |
13 |
length(string) |
14 |
lengthb(text/bpchar) |
15 |
ltrim(string [, characters]) |
16 |
md5(string) |
17 |
notlike(x bytea name text, y bytea text) |
18 |
octet_length(string) |
19 |
overlay(string placing string FROM int [for int]) |
20 |
quote_ident(string text) |
21 |
quote_literal(string text) |
22 |
quote_nullable(string text) |
23 |
rawcat(raw,raw) |
24 |
regexp_count(string text, pattern text [, position int [, flags text]]) |
25 |
regexp_instr(string text, pattern text [, position int [, occurrence int [, return_opt int [, flags text]]]]) |
26 |
regexp_like(source_string, pattern [, match_parameter]) regexp_like(text,text,text) |
27 |
regexp_matches(string text, pattern text [, flags text]) |
28 |
regexp_replace(string, pattern, replacement [,flags ]) |
29 |
regexp_split_to_array(string text, pattern text [, flags text ]) |
30 |
regexp_split_to_table(string text, pattern text [, flags text]) |
31 |
regexp_substr(source_char, pattern) regexp_substr(string text, pattern text [, position int [, occurrence int [, flags text]]]) |
32 |
repeat(string text, number int ) |
33 |
repexp_replace(string text, pattern text [, replacement text [, position int [, occurrence int [, flags text]]]]) |
34 |
replace(string text, from text, to text) |
35 |
replace(string, substring) |
36 |
reverse(str) |
37 |
right(str text, n int) |
38 |
rtrim(string [, characters]) |
39 |
sha(string) |
40 |
sha1(string) |
41 |
sha2(string, hash_length) |
42 |
split_part(string text, delimiter text, field int) |
43 |
substring(string [from int] [for int]) substring(string from pattern for escape) substring(string from pattern) |
44 |
substring_inner(string [from int] [for int]) |
45 |
tconvert(key text, value text) |
46 |
to_single_byte(char) |
47 |
translate(string text, from text, to text) |
48 |
trim([leading |trailing |both] [characters] from string) |
49 |
unistr(string) |
50 |
vsize(expr) |
51 |
PKG_UTIL.RAW_CAST_FROM_VARCHAR2 |
52 |
PKG_UTIL.LOB_CONVERTTOCLOB |
53 |
PKG_UTIL.LOB_RAWTOTEXT |
54 |
PKG_UTIL.LOB_TEXTTORAW |
55 |
PKG_UTIL.RAW_CAST_TO_VARCHAR2 |
56 |
DBE_OUTPUT.PUT |
57 |
DBE_OUTPUT.PUT_LINE |
fix_func_selection
Parameter description: Specifies whether to optimize the function matching policy.
The catlist sequence issue occurs in this case: If a user-defined function conflicts with a system function, the function selected by the database depends on the registration sequence of the system function in the database system.
Parameter type: string.
Unit: none
Value range: '' and catlist.
- '': No optimization is performed. The value is the same as that in versions earlier than 505.1.0.
- catlist: The catlist sequence is optimized. (The non-B-compatible mode is optimized. In non-B-compatible mode, system functions are always preferentially selected and executed.) The B-compatible mode is the same as that in versions earlier than 505.1.0. An error message indicating that the function is not unique may be displayed, or a system function may be selected for execution.
Default value:
- catlist: default value of the newly installed database
- '': default value of the database in versions earlier than 505.1.0 after the database is upgraded.
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
max_allowed_packet
Parameter description: Specifies the database configuration item in M-compatible mode.
Originally, this parameter specifies the maximum length of a data packet for communications between the database and the client in M-compatible mode. Currently, this parameter is only used to limit the maximum return values of some functions. It affects the upper limit of the return values of the string functions REPEAT, REPLACE, and SPACE, and affects the value of N in the CAST(expr AS BINARY(N)) and CONVERT(expr AS BINARY(N)) functions. This is a PGC_SIGHUP parameter.
Parameter type: integer.
Unit: byte
Value range: 1024 to 1073741824. The value must be a multiple of 1024. Otherwise, the value is rounded down to the nearest multiple.
Default value: 4194304
Setting suggestion: Retain the default value 4194304.
div_precision_increment
Parameter description: Specifies the database configuration item in M-compatible mode.
This is a session-level parameter, which is used to set the value of precision that the division result can improve. The final precision is the precision of the first operation parameter added by the value of this parameter.
Parameter type: integer.
Unit: none
Value range: 0 to 30
Default value: 4
Setting suggestion: none.
enable_m_format_hook
Parameter description: Specifies the database configuration item in M-compatible mode.
This parameter specifies whether the hook in M-compatible mode takes effect.
Parameter type: Boolean.
Unit: none
Value range:
- ON: The M-compatible database allows the corresponding parser and executor hooks to be mounted.
- OFF: The M-compatible database does not mount the corresponding parser and executor hooks.
Default value: ON
Setting suggestion: This parameter is used only for external tools that are not fully adapted and cannot be used by users.
gs_format_behavior_compat_options
Parameter description: gs_format_behavior_compat_options is used to select configuration items of GaussDB internal system functions.
Parameter type: string.
Unit: none
Value range: Currently, only the compatibility configuration items listed in Table 14 are supported. Compatibility configuration items are separated by commas (,).
Default value: 'sqrt_karatsuba'
Configuration Item |
Behavior |
---|---|
'sqrt_karatsuba' |
|
'allow_textconcat_null' |
|
Setting method: This is a USERSET parameter. Set it based on instructions provided in Table 1.
Setting suggestion: Determines whether some compatibility features are available. If you want to modify this parameter, make sure you understand its meaning and modify it with caution to avoid risks caused by misoperations.
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