New Features and Resolved Issues in 8.1.3.x
8.1.3.333
Category |
Feature or Resolved Issue |
Cause |
Version |
Handling Method |
---|---|---|---|---|
New feature |
None |
- |
- |
- |
Resolved issue |
Permissions are lost after a cluster upgrade. |
Upon upgrading to version 8.1.3.330, an error message appears indicating insufficient permission for certain link services. An earlier version contains a vulnerability that allows improper permission bypass. Upgrading to a version that addresses this issue results in a change in behavior. |
8.1.3.330 |
Upgrade the version to 8.1.3.333 or later. |
The ceil function's output of -0 affects service judgment. |
The ceil function may return -0 when rounding a float value. Use the normalize_negative_zero parameter to control whether -0 is returned. |
Versions earlier than 8.1.3.333 |
||
The sqlbuil fuzzing test causes a core dump "(ctePlan != __null && ctePlan->isCtePlan&&InitStreamFlow" in complex queries. |
During the finalize_node_id phase, initplan is copied, and the sequence of glob->subplans is adjusted. However, the position of the CTE pointed to by referencedCtePlanIds is not adjusted, causing the CTE to point to an incorrect subplan and be set to NULL. |
Versions earlier than 8.1.3.333 |
||
In GaussDB(DWS), queries using the decimal data type in Hive display null values. |
GaussDB(DWS) and Hive process decimal data differently. |
Versions earlier than 8.1.3.333 |
||
The WITH RECURSIVE statement runs indefinitely. |
In the Arm environment, thread information synchronization is abnormal during the WITH RECURSIVE statement execution, causing variables to not update synchronously. |
8.1.3.323 |
8.1.3.330
Type |
Feature or Resolved Issue |
Cause |
Version |
Handling Method |
---|---|---|---|---|
New feature |
None |
- |
- |
- |
Resolved issue |
Core dump during plan generation for insert into select statement. |
Duplicate sublinks in ORCLAUSE conversion lead to double adjustment in OffsetVarNodes. |
Versions earlier than 8.1.3.330 |
Upgrade the version to 8.1.3.330 or later. |
Accidental core dump "core:CStorePartitionInsert::findBiggestPartition" during column storage lightweight test. |
During statistics collection for bulkloadUsedMemSize in a partitioned table using column-store, both UPDATE and INSERT operators are gathered by the system. However, the adaptive memory size is calculated separately for each operator when data is flushed to disks, which can result in g_bulkloadUsedMemSize being higher than expected. If the memory usage of the UPDATE operator reaches the estimated threshold, it could prevent an INSERT operator data record from being inserted. |
Versions earlier than 8.1.3.330 |
||
Wait ccn queuing without reaching threshold. |
Inability to calibrate global memory during CCN queuing blocks jobs. |
Versions earlier than 8.1.3.330 |
||
Unauthorized table queries possible through nesting. |
The light proxy's permission check relies on the ExecCheckRTPerms function within the CN's checkLightQuery procedure. This check is not extended to DNs. For ExecCheckRTPerms to operate correctly, the rangeTables parameter should be set to RTE_RELATION. If not, the function defaults to returning true. However, this mechanism fails for nested SQL statements, where the type changes to RTE_SUBQUERY, skipping the necessary permission validation. |
Versions earlier than 8.1.3.330 |
||
Occasional "canceling statement due to statement timeout" error with deletion statement. |
The transaction time is not reset for the w packet, leading to thread reuse. |
Versions earlier than 8.1.3.330 |
||
Memory leak when querying JSON type data. |
Memory is not released in the jsonb out function, causing high usage. |
Versions earlier than 8.1.3.330 |
||
"Tuple concurrently updated" error during concurrent job execution. |
The OID of a partition is identical to that of its corresponding table. During the execution of the ANALYZE command, the pg_object catalog is updated with the OID of the partition. This update process also applies to the pg_object record of the table itself. Concurrently, DDL operations may be executed. For instance, if an ALTER TABLE command is executed, it will modify the pg_object record of the table, which could potentially result in an error. |
Versions earlier than 8.1.3.330 |
8.1.3.325
Type |
Feature or Resolved Issue |
Cause |
Version |
Handling Method |
---|---|---|---|---|
New feature |
|
- |
- |
- |
Resolved issue |
Logs fail and the cluster is hung after DN restart. |
When the stream thread error logs are printed, the stream thread responds to the cancel signal. When the logs are printed again, the stream thread is hung up. |
8.1.3.320 |
Upgrade the version to 8.1.3.325. |
|
When the OID usage surpasses 4.2 billion, the system reallocates OIDs. During this reallocation process, intermittent errors may occur. |
8.1.3.323 and earlier versions |
||
Checkpoint failures on the standby DN prevent the reclamation of xlogs, leading to their continuous accumulation. |
During the redo checkpoint operation on the standby DN, the detection of incomplete btree splitting triggers an RM 11 error. This may indicate a btree splitting failure or that the process is still ongoing. |
8.1.3.323 and earlier versions |
||
If a lightweight update occurs on a column-store table while autovacuum runs in the background, the system may report an error Unsupported to update different rows with the same cuid and col in light update. |
In lightweight update, the same cuid and col cannot be used to update different rows. |
8.1.3.323 and earlier versions |
||
The no_merge hint operation does not take effect in some scenarios. |
The subquery hint function cannot be disabled. |
8.1.3.323 and earlier versions |
||
When a long-time query statement is executed on the background, if you press Ctrl+C to end the statement and then press Ctrl+Z to exit the gsql client, residual statements exist. |
Upon receiving the CTRL+C signal, the CN thread enters the error jump process. In this case, the CN thread invokes EmitErrorReport, but EmitErrorReport does not respond to the signal. |
8.1.3.323 and earlier versions |
||
When a wide table is used with a real-time table for associated update, the memory usage is too high, affecting the performance. |
Associating a wide table with a real-time table for updates introduces superfluous columns. This leads to excessive memory consumption during the optimizer's execution plan estimation, thereby deteriorating performance |
8.1.3.323 and earlier versions |
||
In the ShareScan plan, the memory of the tuplestore and batchstore for storing CTEs cannot be expanded. As a result, data may be written to disks. |
cteMaxMem in the ShareScan execution plan is not copied, read, or written. As a result, the DN fails to obtain the value from the CTE execution plan, and the created tuplestore and batchstore for storing the CTE result set cannot be expanded in memory. As a result, data spills to disks. |
8.1.3.323 and earlier versions |
||
The error message could not determine data type of parameter is reported when a lightweight column-store update is performed. |
In the remote query of the execution plan, the parame parameter is specified as its position in the base table, and the system column cannot match this parameter. |
8.1.3.323 and earlier versions |
8.1.3.322
Type |
Feature or Resolved Issue |
Cause |
Version |
Handling Method |
---|---|---|---|---|
New feature |
The default value of the GUC parameter enable_limit_stop is changed to on. |
- |
- |
- |
Resolved issue |
None |
- |
- |
- |
8.1.3.320
Type |
Feature or Resolved Issue |
Cause |
Version |
Handling Method |
---|---|---|---|---|
New feature |
Concurrent truncate, exchange, and select operations Added the GUC parameter ddl_select_concurrent_mode. This parameter is used to solve the problem that the query statement lasts for a long time and blocks DDL in the scenario where the data volume is large or the query is complex. The effect is the same as that of the Oracle database. Application scenarios:
Scenario constraints
Connection constraints:
|
- |
- |
- |
Whether to enable early stop optimization for LIMIT statements can be controlled. Added the GUC parameter enable_limit_stop to specify whether to enable the early stop optimization for LIMIT statements. |
- |
- |
- |
|
Resolved issue |
The statement-level estimated memory exceeds the value of max_process_memory and causes ccn queuing. |
The statement-level estimated memory exceeds the value of max_process_memory. |
8.1.3.310 and earlier versions |
Upgrade the version to 8.1.3.320 or later. |
When the MERGE operation is performed, an error messagevalue xxx is out of range for type integer is displayed. |
The pg_toast_get_baseid() function uses an integer interface for OID processing. |
8.1.3.310 and earlier versions |
||
Querying the dirty page rate view of a large table containing 200,000 data rows results in significant memory consumption. |
In the process of data querying, each node in the statistics-querying linked list requests memory to store tupStatus. Post-query, while the nodes' memory is freed, the allocated memory within the nodes for tupStatus remains unreleased. |
8.1.1.x |
||
When a Vacuum operation times out and is terminated, some DNs retain leftover threads, which then fail to respond to signals and obstruct the execution of subsequent statements. |
The btvacuumscan thread does not respond to signals. As a result, after the Vacuum execution times out and is killed, some DNs have residual threads and cannot respond to signals. |
8.1.1.x |
||
Executing percentage sampling on partitioned and time series tables within the MySQL compatibility library triggers an error: "unsupported feature with temporary/unlogged table for partitioned table". |
In 8.1.3, the default inheritance mode is INCLUDING ALL to match the CREATE TABLE LIKE syntax in MySQL. However, this causes an error during ANALYZE percentage sampling because the command for automatically creating temporary replication tables is included the sampling. |
8.1.3.310 and earlier versions |
||
The SELECT query of the cold and hot tables triggers runtime autoanalyze, deteriorating the query performance. |
If the select operation is performed After the TRUNCATE PARITION, EXCHANGE PARTITION, DROP PARTITION, ALTER DISTRIBUTE, or ALTER COLUMN TYPE operation, AUTOANALYZE is triggered. |
8.1.3.310 and earlier versions |
||
The value of elapsed_time in pg_session_wlmstat is inconsistent with the actual execution time of the top SQL statement. |
When querying the pg_session_wlmstat view, the elapsed_time value appears excessively high for statements in the RUNNING state. |
8.0.x |
||
When the SELECT permission is granted to a foreign table, the error message "has no distribute type" is displayed. |
The default distribution mode is not specified for the OBS dfs server write-only foreign tables. |
8.1.3.310 and earlier versions |
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