New Features in 8.2.1
For details about the new features of version 8.2.1.x (released only for whitelisted users), see New Features in 8.2.1. For details about the resolved issues of each patch, see New Features and Resolved Issues in 8.2.1.x.
[V8.2.1.225 Release Date] July 2024
[V8.2.1.223 Release Date] June 2024
[V8.2.1.220 Release Date] April 2024
[V8.2.1.119 Release Date] February 2024
[V8.2.1.100 Release Date] May 2023
New Features
SQL Syntax Changes
Change Type |
No. |
Item |
Description |
---|---|---|---|
Added |
1 |
obs_null_file |
The table-level parameter obs_null_file is added for management and control. When this parameter is set to on, an error is reported when a non-existent file or an invalid path is detected during the import process into GaussDB(DWS). |
2 |
replace_illegal_chars |
The GDS foreign table option replace_illegal_chars is added to replace 0x00 import. |
|
3 |
DISCARD GLOBAL TEMP [TABLE] |
Clears global temporary tables within the current session. When executed without specifying a table name, it will remove all global temporary tables associated with the session. If a specific table name is provided, only that particular global temporary table will be cleared. |
|
4 |
ALTER SEQUENCE [ IF EXISTS ] name CACHE cache |
The cache value of a sequence can be changed. |
|
5 |
CREATE STATISTICS |
Creates an extended statistics object for a table. |
|
6 |
DROP STATISTICS |
Deletes an extended statistics record. |
|
7 |
ALTER STATISTICS |
The ALTER syntax for extended statistics is added. |
|
8 |
The keyword MASKED is added to ALTER FUNCTION. |
Added the syntax for setting whether a function supports non-masking. |
|
9 |
last_value ignore nulls |
The last_value ignore nulls syntax is added to exclude NULL values during calculations. |
|
10 |
ALTER MATERIALIZED VIEW qualified_name OWNER TO RoleId |
Changes the owner of the materialized view. |
|
11 |
CREATE MATERIALIZED VIEW |
Creates a materialized view. |
|
12 |
ALTER MATERIALIZED VIEW |
Modifies the properties of a materialized view. |
|
13 |
DROP MATERIALIZED VIEW |
Deletes a materialized view. |
|
14 |
REFRESH MATERIALIZED VIEW |
Refreshes a materialized view. |
|
Modified |
15 |
UNIQUE NULLS NOT DISTINCE and UNIQUE NULLS IGNORE |
UNIQUE NULLS NOT DISTINCE and UNIQUE NULLS IGNORE are prohibited for use when defining a foreign table. The unique constraints applied to foreign tables serve only as informational constraints and do not result in the creation of an underlying index. Therefore, these settings, which pertain to the treatment of NULL values in unique constraints, are inapplicable in this context. |
16 |
MERGE INTO is prohibited for views containing triggers |
When a view contains a trigger and a MERGE INTO operation is performed, the view remains unaltered. It is advisable to avoid using MERGE INTO in such cases. |
|
17 |
discard all, discard temp, discard sequences, and discard plans |
These parameters are used to release temporary resources related to the current session and reset them to the initial state. |
|
18 |
CREATE/ALTER RESOURCE POOL |
The weight option is added to set the network weight. |
|
19 |
CREATE/ALTER EXCEPT RULE |
Added the bandwidth exception identification and penalty behaviors for exception handling. |
|
20 |
LOCK [ TABLE ] {[ ONLY ] name [, ...]| {name [ * ]} [, ...]} [ IN <lockmode> MODE ] [ NOWAIT ] [LOCAL COORDINATOR ONLY]; |
The 8.2.0 version introduces syntax specifically for locking the local CN. Initially, it supports only the ACCESS SHARE lock mode. Following this update, the system accommodates all eight levels of lock modes. |
|
21 |
[BEFORE | AFTER] old_policy_name for CREATE REDACTION POLICY |
The new [BEFORE|AFTER] old_policy_name option has been added. If not specified, the default behavior is to create the new policy subsequent to the one with the highest policy_order for the given table object. |
|
22 |
timestampdiff() |
The problem that the result is incorrect when the time difference is negative is resolved. |
|
23 |
In full join scenarios, the check scope of volatile function rewriting is narrowed down. |
In scenarios involving a full join across multiple tables, the current version streamlines the process by examining only the volatile attribute of functions following the ON condition. Additionally, previous limitations on the rewriting of certain volatile functions have been lifted. |
|
24 |
merge into |
Partitions can be specified. |
Keywords
Change Type |
No. |
Item |
Description |
---|---|---|---|
Added |
1 |
FACT |
The keyword FACT is added to the HINT syntax. Consequently, the FACT cannot be used as an alias within HINT. |
2 |
LIGHT |
A non-reserved keyword LIGHT has been added to the Analyze (light) table statement to indicate that dynamic sampling is initiated manually. |
System Catalogs
Change Type |
No. |
Item |
Description |
---|---|---|---|
Added |
1 |
PG_STAT_OBJECT |
Thread statistics and autovacuum effect are recorded to the pg_stat_object system catalog. |
2 |
PG_PLAN_BASELINE |
The binding relationships between SQL statements and plans are save in this catalog |
|
3 |
PG_PROC_REDACT |
A system catalog is added to record the manual non-masking functions. |
|
Modified |
4 |
GS_WLM_SESSION_INFO |
The stmt_type field is added to identify the query statement type. |
5 |
GS_RESPOOL_RESOURCE_HISTORY |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
6 |
GS_WLM_USER_RESOURCE_HISTORY |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
7 |
PG_REDACTION_POLICY |
The policy_order field is added to record the priority of masking policies associated with the same table object. A larger sequence number indicates a later creation and a higher priority. |
|
8 |
PG_REDACTION_COLUMN |
The policy_oid field is added to record the masking policy corresponding to the masking column details. Starting with version 8.2.1, the relationship between masking policies and masking columns is one-to-many, while the relationship between masking policies and table objects is many-to-one. |
|
9 |
PG_STAT_OBJECT |
Renamed the reserved field extra1 to last_autovacuum_csn. |
|
10 |
GS_WLM_SESSION_INFO |
The unique_plan_id, sql_hash, plan_hash and use_plan_baseline fields are added. |
System Functions
Change Type |
No. |
Item |
Description |
---|---|---|---|
Added |
1 |
SHOW_TSC_INFO() |
Queries the TSC conversion information of the current node. |
2 |
GET_TSC_INFO() |
Re-acquires stable TSC conversion data for the current node without updating memory. |
|
3 |
TEST_TSC_INFO(time double, loops int) |
Tests time conversion accuracy with constraints: time <= 60s, 1 <= loops <= 10. |
|
4 |
GET_FIRST_VALUE |
Returns the first row's value from the current column. |
|
5 |
READ_GLOBAL_VAR |
Accesses global session-level variables (e.g., my.var). |
|
6 |
GS_QUERY_PENALTY(query_id) |
Implements a manual query downgrade using query_id. |
|
7 |
CURRENT_TEMP_SCHEMA |
Displays the temporary schema of the current session. |
|
8 |
GS_WAIT_CURRENT_ACTIVE_DDL_COMPLETE |
Awaits the application of GUC parameters across all threads. |
|
9 |
PGXC_WAIT_CURRENT_ACTIVE_DDL_COMPLETE |
Awaits the application of GUC parameters across all threads. |
|
10 |
GS_SWITCH_PART_RELFILENODE |
Swaps filenodes between two specified partitions. |
|
11 |
REFRESH_HOT_STORAGE(text) |
Transfers all data from a specified hot-cold table to OBS. The return result is the count of cold partitions on the DN. |
|
12 |
REFRESH_HOT_STORAGE(text, text) |
Transfers specified partition data of a hot-cold table to OBS. The return result is the count of cold partitions on the DN. |
|
13 |
PG_QUERY_AUDIT_DETAILS |
Invokes pgxc_query_audit or pg_query_audit to parse the object_details and object_name fields. |
|
14 |
PGXC_HSTORE_DELTA_INFO |
Queries HStore Delta table records and table sizes from the CN for troubleshooting. |
|
15 |
COPY_PARTITION_STATS |
Copies statistics from one table's partition to another without stats. |
|
16 |
UPDATE_PARTITION_RELSTATS |
Updates relpages and reltuples stats for a partitioned table. |
|
17 |
PG_GET_STAT_EXPRESSIONS |
Retrieves textual expressions from created expression statistics. |
|
18 |
GS_HSTORE_COMPACTION |
Initiates manual compaction of an hstore table, independent of autovacuum_compaction_rows_limit. The first parameter specifies the target table name, while the second parameter defines the small CU rows limit, defaulting to 100 if unspecified. |
|
19 |
PG_SCAN_RESIDUALFILES |
Scans residual files. |
|
20 |
PG_GET_SCAN_RESIDUALFILES |
Retrieves the list of scanned residual files. |
|
21 |
PGXC_LOCK_WAIT_STATUS() |
Queries cluster lock wait relationships. |
|
22 |
PG_CANCEL_BACKEND (pid, msg) |
Sends a custom error message when a PID session is interrupted. |
|
23 |
PG_GET_STATISTICSOBJDEF |
Obtains the statements for creating expression statistics. |
|
24 |
PG_STAT_GET_ALL |
Returns table-related tuples from pg_stat_object on the current CN. The input parameters are namespace and relname. |
|
25 |
PGXC_STAT_GET_ALL |
Returns table-related tuples from pg_stat_object across all CNs. The input parameters are namespace and relname. |
|
26 |
PGXC_STAT_OBJECT_BYNAME |
Quickly returns the relname records from pgxc_stat_object. The input parameters are namespace and relname. |
|
27 |
PG_DUMP_PLANMGMT_INFO |
Updates saved plans for subsequent binding, unbinding, and dropping operations. |
|
28 |
PG_FOREIGN_INSERT_COMMIT |
Used by the CN to deliver a rename plan to DNs when an insert operation is performed on an object in the external schema table. |
|
29 |
PG_SYSTEM_WITH_TOAST_CREATE |
Creates a toast table for the pg_external_namespace system catalog. |
|
30 |
PG_GET_EXTERNAL_SCHEMA_TABLE_OPTIONS |
Obtains the table object options of an external schema. |
|
31 |
PG_GET_EXTERNAL_SCHEMA_TABLE_COL |
Obtains the table column metadata of external schemas. |
|
Modified |
32 |
GS_WLM_REBUILD_SCHEMA_HASH(oid) |
The input parameter is changed from int to OID. |
33 |
GS_WLM_ALL_USER_RESOURCE_INFO |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
34 |
GS_GET_RESPOOL_RESOURCE_INFO |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
35 |
GS_WLM_USER_RESOURCE_INFO |
The network sending and receiving rate monitoring metrics send_speed and recv_speed, and the input parameter username are added. |
|
36 |
PG_STAT_GET_WLM_REALTIME_SESSION_INFO |
The except_info column is added to display information about exception rules triggered by statements. |
|
37 |
GS_TABLE_DISTRIBUTION |
|
|
38 |
PG_FAST_TABLE_SIZE |
|
|
39 |
PG_LIFECYCLE_TABLE_DATA_DISTRIBUTE |
Updated to allow access for non-administrator users. |
|
40 |
PG_QUERY_AUDIT |
The object_details, result_rows, and error_code columns are added to audit logs. The pg_query_audit output parameter is modified, and three columns are added. |
|
41 |
PGXC_QUERY_AUDIT |
The object_details, result_rows, and error_code columns are added to audit logs. The pgxc_query_audit parameter is modified, and three columns are added. |
|
42 |
GET_COL_CU_INFO |
|
|
43 |
PG_STAT_GET_WLM_REALTIME_OPERATOR_INFO |
The following fields are added: parent node ID, execution times, progress, network, and disk read/write. |
|
44 |
PG_STAT_GET_WLM_REALTIME_OPERATOR_INFO |
The input parameter queryid is added to query the statement information of a specified query ID. |
|
45 |
TRUNC(timestamp with time zone) |
The stability type is modified to stable from immutable to improve performance in certain scenarios. |
|
46 |
PG_STAT_GET_WLM_REALTIME_SESSION_INFO |
The stmt_type column is added to identify the statement type. |
|
47 |
PG_STAT_GET_WLM_REALTIME_SESSION_INFO |
The unique_sql_id field is added. |
System Views
Change Type |
No. |
Item |
Description |
---|---|---|---|
Added |
1 |
SHOW_TSC_INFO |
Records the TSC conversion information of the current node. |
2 |
SHOW_ALL_TSC_INFO |
Records the TSC conversion information of all nodes. |
|
3 |
GET_TSC_INFO |
Re-acquires stable TSC conversion data for the current node without updating memory. |
|
4 |
GET_ALL_TSC_INFO |
Re-acquires stable TSC conversion data for all nodes without updating memory. |
|
5 |
PGXC_WLM_TABLE_DISTRIBUTION_SKEWNESS |
Records disk space skew of physical tables on DNs. |
|
6 |
PGXC_STAT_OBJECT |
Records the pg_stat_object information of all nodes in the cluster: |
|
7 |
PG_GLOBAL_TEMP_ATTACHED_PIDS |
Records information about sessions of resources occupied by global temporary tables on the current node. |
|
8 |
PGXC_GLOBAL_TEMP_ATTACHED_PIDS |
Records information about sessions of resources occupied by global temporary tables on all nodes. |
|
9 |
PG_STATS_EXT_EXPRS |
Records expression statistics stored in the pg_statistic_data system catalog. |
|
10 |
PV_RUNTIME_EXPRSTATS |
It is created based on the pg_stat_get_runtime_exprstats function and is used to query the expression statistics generated by dynamic sampling. |
|
11 |
PG_PLAN_BASELINE |
Records the associations between SQL statements and plans. |
|
12 |
PG_STAT_OBJECT_EXT |
Accelerates the return of the query conditions in pgxc_stat_object by adding query conditions to the inner layers of pgxc_parallel_query. |
|
Modified |
13 |
GS_WLM_SESSION_STATISTICS |
The stmt_type column is added to identify the statement type. |
14 |
PGXC_WLM_SESSION_STATISTICS |
The stmt_type column is added to identify the statement type. |
|
15 |
GS_WLM_SESSION_HISTORY |
The stmt_type column is added to identify the statement type. |
|
16 |
GS_WLM_SESSION_INFO |
The stmt_type column is added to identify the statement type. |
|
17 |
PGXC_WLM_SESSION_HISTORY |
The stmt_type column is added to identify the statement type. |
|
18 |
PGXC_WLM_SESSION_INFO |
The stmt_type column is added to identify the statement type. |
|
19 |
GS_RESPOOL_RESOURCE_INFO |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
20 |
PGXC_RESPOOL_RESOURCE_INFO |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
21 |
PG_TOTAL_USER_RESOURCE_INFO |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
22 |
PGXC_TOTAL_USER_RESOURCE_INFO |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
23 |
PGXC_RESPOOL_RESOURCE_HISTORY |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
24 |
PGXC_WLM_USER_RESOURCE_HISTORY |
The network sending and receiving rate monitoring metrics send_speed and recv_speed are added. |
|
25 |
GS_WLM_SESSION_STATISTICS/PGXC_WLM_SESSION_STATISTICS |
The except_info column is added to display information about exception rules triggered by statements. |
|
26 |
GS_WLM_SESSION_INFO/PGXC_WLM_SESSION_INFO |
The except_info column is added to display information about exception rules triggered by statements. |
|
27 |
GS_WLM_SESSION_HISTORY/PGXC_WLM_SESSION_HISTORY |
The except_info column is added to display information about exception rules triggered by statements. |
|
28 |
REDACTION_COLUMNS |
The view definition of redaction_columns and the policy_name field is added. |
|
29 |
PG_STATS |
The partname field is added to indicate partitions. |
|
30 |
PV_RUNTIME_ATTSTATS |
The partname field is added to the pg_catalog.pv_runtime_attstats view to indicate partitions. |
|
31 |
GS_WLM_OPERATOR_STATISTICS |
The following fields are added: parent node ID, execution times, progress, network, and disk read/write. |
|
32 |
PGXC_WLM_OPERATOR_STATISTICS |
The following fields are added: parent node ID, execution times, progress, network, and disk read/write. |
|
33 |
PGXC_STAT_OBJECT |
Changed with pg_stat_object. The reserved field extra1 is renamed last_autovacuum_csn. |
Behavior Changes
Change Type |
No. |
Item |
Description |
---|---|---|---|
Added |
1 |
Partition view dependency changes |
Before 8.2.1: No view dependency for SELECT PARTITION() or PARTITION FOR() views, causing query errors. 8.2.1 and later: Partition OID dependency added. Views are rebuilt if partitions change in view decoupling scenarios and errors are reported in non-view dependency scenarios. |
Modified |
2 |
gtm_max_trans |
Increased upper limit to accommodate higher thread counts for emergency streams, addressing service concurrency issues in large clusters. |
3 |
max_process_memory |
Reduced the number of CNs to half of DNs to optimize memory usage. |
|
4 |
Catch-up TV process |
Removed data page transaction lock from Catchup, distinguishing it from DDL. Added LwLock to serialize operations between Catchup and DDL services, preventing access to empty files. |
|
5 |
Standby DN checkpoint time |
Checkpoints are no longer executed after a 15 minute period. Now they are executed immediately after redo operations reach the checkpoint to reduce RTO during large Xlog imports. |
|
6 |
Standby DN file closure |
The home page on standby DN is forcibly closed after executing heap_xlog_newpage and seq_redo, ensuring data integrity. |
|
7 |
Indexscan hints |
Expanded to include indexonlyscan. When both indexscan and indexonlyscan hints are present, indexonlyscan is prioritized. |
|
8 |
Case sensitivity in expressions |
Discontinued support for roughcheck due to CU minmax calculations based on C sorting, which could lead to result set discrepancies. |
|
9 |
Multiple count(distinct) rewriting |
Changed rewriting behavior. In non-share scan scenarios, subsequent expansion is unaffected. In share scan scenarios, a stream CTE plan is generated. |
|
10 |
Top SQL substatement monitoring |
Monitoring approach altered from recursive to recording only the first-layer substatements. |
|
11 |
ArrayLockFreeQueue |
Initial memory allocation for lock-free queues capped at 1 GB. |
|
12 |
Explain |
The unique SQL ID is displayed in the Explain result set. |
|
13 |
Explain |
The unique SQL ID of "Explain + SQL statement" is the same as that of the SQL statement. |
|
14 |
GS/PGXC_WLM_SESSION_STATISTICS view |
Added unique SQL ID field. |
|
15 |
GROUP BY query fields |
|
|
16 |
alter function owner to superuser |
Restricted sysadmin users from changing function or stored procedure owners to a system user, except when changing from a system user to another system user. |
|
17 |
Plus sign (+) connection sequence |
The connection sequence of the plus sign (+) is aligned with Oracle. The original connection sequence of the plus sign (+) is related to the join association sequence. After the modification, there will be change in the join condition sequence and result set of related expressions, such as nvl expressions. |
|
18 |
Concurrent updates in hstore tables |
When the same row is concurrently updated in an hstore table, an error is immediately reported. The previous behaviors are as follows: 1). If a line is concurrently updated, an error is reported after waiting. 2). If a line is concurrently delete, no errors are reported after waiting. 3). If a line is concurrently updated and deleted, an error is reported after waiting. The behaviors are changed to the same. |
|
19 |
Catch-up lock level |
Catchup no longer holds a level 1 lock. |
|
20 |
Continuous failover logic |
In consecutive failovers, data is synchronized from the secondary DN to the standby DN only for the first time. |
|
21 |
Unique SQL IDs for temporary tables |
Prior to version 8.2.1, temporary tables sharing the same name across different sessions had distinct schema names, resulting in distinct unique SQL IDs for each table. With the introduction of version 8.2.1, schema names in such temporary tables are standardized using fixed strings, ensuring uniform unique SQL IDs for identical SQL statements executed in different sessions. |
|
22 |
Fine-grained DR in degraded state |
Fine-grained DR supports backup in the degraded state of the primary cluster, expect scenarios where the primary node lacks a normal CN. |
|
23 |
View decoupling |
When an invalid view is accessed, the automatic rebuilding action is not triggered. The system catalog is not updated but expanded locally. |
GUC Parameters
Change Type |
No. |
Item |
Description |
---|---|---|---|
Added |
1 |
time_track_strategy |
Specifies the time statistics method of non-vectorized operators, including tsc, vector, timer, and frequency (debug mode) |
2 |
max_skew_num |
Controls the number of skew values allowed by the optimizer for redistribution optimization. |
|
3 |
disable_full_group_by_mysql |
In MySQL compatibility mode, this parameter permits non-aggregate function query fields post GROUP BY when enabled. |
|
4 |
enable_col_index_vacuum |
Controls autovacuum of column-store indexes, defaulted to false. |
|
5 |
enable_pg_stat_object |
Records the pg_stat_object system catalog when enabled; remains unrecorded when disabled. |
|
6 |
conn_recycle_timeout |
Determines the interval for connection reclamation. |
|
7 |
index_selectivity_cost |
Controls the cost calculation for cbtree during index scanning of column-store tables, applicable when the selection rate is ≥ 0.001. |
|
8 |
default_table_behavior |
Controls default behavior of a table. In versions earlier than 8.2.1, only column_btree_index is supported (the default index created for a column-store table is btree). |
|
9 |
resource_track_subsql_duration |
For TopSQL monitoring, it records substatements in stored procedures exceeding the specified threshold. |
|
10 |
max_files_per_node |
Limits the number of files a single query can open per node. |
|
11 |
max_copy_data_display |
Specifies the maximum character display for the rawrecord field in the COPY error table. |
|
12 |
max_process_memory_balanced |
Sets the upper limit for max_process_memory in primary/standby load balancing mode. |
|
13 |
index_cost_limit |
Controls the cost calculation of cbtree during column-store table index scanning (the selection rate is greater than or equal to 0.001). Hints can be set. |
|
14 |
audit_object_details |
Determines whether to log the object_details column in audit records. |
|
15 |
enable_fd_check |
Checks for incorrect FD shutdowns, enabled by default. |
|
16 |
idle_in_transaction_timeout |
Previously, after session_timeout was set to 0, there might be long idle connections holding table locks. To solve this problem, the transaction-level parameter idle_in_transaction_timeout is added to set the idle timeout interval for idle transaction connections. 1. It is set by users. The unit is second. The default value is 0, indicating that this function is disabled. The value ranges from 0 to 86400 (one day). 2. This parameter is valid only for client connections that are directly connected to CNs. It does not applicable to direct connections to DNs or internal connections. 3. After the value of this parameter is changed to a non-zero value, a FATAL error is reported when the transaction is in the idle state for a period longer than the specified value. |
|
17 |
enable_save_dataaccess_timestamp |
Records the last access time at the table level when enabled. It is disabled by default. |
|
18 |
behavior_compat_options |
Added check_function_shippable to the behavior_compat_options parameter. If check_function_shippable is enabled, the function ship is checked.
|
|
19 |
enable_release_scan_lock |
The USERSET parameter enable_release_scan_lock is added. When this parameter is enabled, the level-1 lock is released after the statement is executed. |
|
20 |
job_queue_naptime |
The job_queue_naptime parameter is added to set the interval for triggering a task and the timeout interval. The default value is 1s. |
|
21 |
enable_stream_sync_quit |
The GUC parameter is added. By default, it is disabled to ensure that the sync quit command is not blocked. |
|
22 |
enable_full_string_agg option of behavior_compat_options |
The enable_full_string_agg option is added to behavior_compat_options. Enabling this parameter allows the string_agg() function to execute full aggregation within a window when used with OVER (PARTITION BY xx ORDER BY xxx). Conversely, if this parameter is disabled, string_agg() will perform incremental aggregation in the same context. By default, this parameter is set to disabled. |
|
23 |
enable_cast_hashjoin option of behavior_compat_options |
The enable_cast_hashjoin parameter is added to behavior_compat_options. When enabled, this parameter facilitates type conversion in JOIN conditions, such as between timestamp and timestampz, to enable efficient hash joins. By default, this parameter is disabled. |
|
Modified |
24 |
behavior_compat_options |
The parameter DISABLE_SET_GLOBAL_VAR_ON_DATANODE has been added to the behavior_compat_options to ensure that global variables cannot be set on DNs. |
25 |
hashjoin_spill_strategy |
Policies 5 and 6 have been implemented, mirroring the functionalities of policies 0 and 1, respectively. However, there have been modifications to the latter: now, if an internal table exceeds memory capacity, it will be subdivided recursively until further division is not possible. Subsequently, the system will initiate a swap between the internal and external tables. |
|
26 |
behavior_compat_options |
The behavior_compat_options parameter now includes the disable_gc_fdw_filter_partial_pushdown option, which governs the filter conditions applied to foreign tables during collaborative analysis. Enabling this option means that if any condition is non-pushable, none will be pushed down. Conversely, disabling it allows for partial pushdown of conditions. |
|
27 |
prefer_hashjoin_path |
When the prefer_hashjoin_pathda parameter is enabled, the system prioritizes the creation of a hash join path. This may cause execution plans with the same cost to change. |
|
28 |
volatile_shipping_version |
The configuration now includes the value 3 to regulate the pushdown behavior of volatile functions. Meanwhile, value 2 has been updated to facilitate the pushdown of volatile functions within replicated Common Table Expressions (CTEs). Furthermore, the pushdown of volatile functions in CTEs is now disabled in scenarios where share scan is not used. |
|
29 |
behavior_compat_options |
The ignore_unshipped_concurrent_update option is added to control whether to ignore new tuple detection in concurrent update scenarios. |
|
30 |
max_connections |
The minimum value is changed from 1 to 100. |
|
31 |
max_process_memory |
The setting takes effect directly without depending on whether max_process_memory_auto_adjust is enabled. |
|
32 |
index_selectivity_cost |
The forward compatibility of column-store indexcost is rectified to prevent the default plan from changing. The default value of this parameter is changed to -1, and hints can be set. |
|
33 |
behavior_compat_options |
The option enable_pushdown_groupingset_subquery has been added. By default, if a subquery includes a grouping set, the outer condition is not eligible for pushdown into the subquery. However, when this parameter is enabled, it allows the outer condition to be pushed down into the subquery. It is important to verify the accuracy of the results after the pushdown is performed. |
|
34 |
comm_max_stream |
comm_max_stream supports reload. |
|
35 |
enable_tsdb_multi_temperature |
This parameter specifies whether cold and hot tables can be created for time series tables. The default value is changed to off. |
|
36 |
enable_col_index_vacuum |
The default value of enable_col_index_vacuum is changed to true. By default, autovacuum is allowed to clear column-store indexes. |
|
37 |
enable_redistribute |
This parameter controls the query optimizer's use of data transmission in local redistribute and split redistribute redistribution modes. It is not used in versions earlier than 8.2.1. |
|
38 |
time_track_strategy |
|
|
39 |
behavior_compat_options |
The value enable_banker_round is added to control the use of the banker algorithm. |
|
40 |
behavior_compat_options |
The orderby_null_first parameter is added to determine if null values should be treated as the lowest values when performing order by sorting operations. It is important to note that this parameter is only applicable to TD-compatible databases. |
|
41 |
behavior_compat_options |
The parameter alter_distribute_key_by_partition is added to enable the distribution of data across partitions during an ALTER TABLE operation that uses the DISTRIBUTE BY clause. When enabled, this parameter ensures that the INSERT INTO command targets specific partitions. Conversely, disabling this parameter will maintain the default behavior, where INSERT INTO affects the entire partitioned table. |
|
42 |
behavior_compat_options |
The parameter enable_use_syscol_in_replicate_table is added. If this parameter is not configured, utilizing system columns such as oid, ctid, tableoid, or xc_node_id as filters, join conditions, or within the HAVING clause for operations like INSERT, UPDATE, MERGE INTO, or DELETE will trigger an error message. |
|
43 |
behavior_compat_options |
The parameter enable_force_add_batch is added to enhance control over batch processing. When support_batch_bind is set to on, and both enable_fast_query_shipping and enable_light_proxy are set to off, GaussDB(DWS) receives U packets in addbatch mode. It is important to be aware that this mode may lead to slower packet importation into the database, potentially resulting in memory shortages. Therefore, careful consideration is advised when configuring this parameter. |
|
44 |
behavior_compat_options |
The disable_update_returning_check option is added to the behavior_compat_options parameter. This addition provides control over whether updates to the replication table should include the RETURNING clause. |
|
45 |
cost_model_version |
The value 3 is added, which signifies an enhancement to the broadcast cost estimation for large cluster environments. This optimization builds upon the existing value 2, enabling the optimizer to more effectively select superior execution plans. |
|
46 |
enable_track_record_subsql |
The default value of this parameter is changed to on. |
|
Deleted |
47 |
enable_grant_public |
This parameter specifies that the grant to public syntax is not supported in security mode and is deleted in versions later than 8.2.1. |
48 |
enable_grant_option |
This parameter specifies that the grant with grant option syntax is not supported in security mode and is deleted in versions later than 8.2.1. |
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