This document details the issues resolved in each Hologres version, providing descriptions and impact analysis. By matching error messages or issue descriptions, you can identify and prevent potential problems in your instance. We strongly recommend upgrading to the latest version for optimal stability and performance. For upgrade assistance or technical support, see How to get more online support?.
Understanding bug fixes in Hologres
Notes on bugs and fixes
Bug persistence: A bug identified in a specific Hologres version typically persists in most earlier versions as well.
For example, a bug in V1.3 may also be present in V1.1 and V0.10. Any exceptions to this will be explicitly noted.
Fix upward compatibility: A bug that has been fixed in a particular version will remain resolved in all subsequent versions.
For instance, a fix implemented in V1.1 will continue to be effective in V1.3 and all later versions.
Bug severity levels
P0 (Critical): Upgrade Immediately. These bugs significantly impact online services, affecting query correctness or write success rates. Triggering a P0 bug necessitates urgent attention.
P1 (High): Recommended Upgrade. Addressing P1 bugs is advised to prevent related issues and maintain service stability.
P2 (Medium): Upgrade as Needed. These are typically occasional bugs that can often be resolved by re-executing a method or restarting the instance.
2026
February 2026
Level | Description | Cause | Affected versions | Fixed versions | Workaround |
P2 | The Note For three-argument calls, | A logic defect in the HQE engine affects two-argument |
|
|
|
January 2026
Level | Description | Cause | Affected versions | Fixed versions | Workaround |
P2 | Error when using JOIN with PQE execution engine: | Error occurs because the output columns of the JOIN and the input columns of PQE are misaligned in Join and PQE calculations. |
|
|
|
P2 | Error when using PQE engine with BETWEEN calculation: | PQE does not support BETWEEN operator calculations. |
|
| Upgrade to the latest version. |
P1 | Filtering with timestamp as segment key or cluster key results in no filtering of the final output. | The storage engine has issues extracting segment keys currently, leading to data not being filtered. |
|
| Upgrade to the latest version. |
P1 | Memory usage continuously increases after upgrading to V4.0 and does not decrease or stabilize even without queries. | A memory leak occurs in the result cache link when encountering a dictionary array in version 4.0. |
|
|
|
P2 | Plan generation fails with CTE reuse, resulting in an error: | The Query Optimizer (QO) incorrectly updates the CTE count, leading to the final error. |
|
|
|
P2 | Error when taking array elements using range notation (e.g., | The QO has issues processing array elements, leading to the final error. |
|
| Upgrade to the latest version. |
P1 | When all the following conditions are met, and the shard count is greater than the bucket count, data output by PQE and joined (or UNION ALL) with scan results from a normal columnar table in the same Table Group my experience losses, because shuffle is by passed.
| When a columnar table uses the primary key index, the plan generated by QO does not use the Gather operator. This leads to data loss in PQE queries calculating |
|
| Upgrade to the latest version. |
P2 |
| Rebuild did not consider case sensitivity in older versions, causing failures. |
|
| Upgrade to the latest version. |
P2 | Error occurs when a subquery contains a CASE WHEN expression:
| A bug in the query optimizer handling this scenario prevents it from generating a usable query plan. |
|
|
|
P1 | When a Flink source table consumes binlogs from a Hologres table, if the Flink table is defined with only a subset of columns from the Hologres table, unexpected null values may appear in the Flink output. | A known issue in Flink's Hologres connector specifically impacts binlog consumption when the Flink source table projects a subset of columns from the Hologres table. |
|
|
|
P1 | Completed queries are not automatically cleaned up, leading to hanging transactions and tables remaining locked. | A bug in the garbage collection (GC) logic prevents the proper cleanup of |
|
|
|
2025
December 2025
Level | Description | Cause | Affected versions | Fixed versions | Workaround |
P0 | When querying DLF Paimon tables with a postpone bucket, Hologres reads committed data that has not yet undergone compaction. This leads to duplicate primary keys within the primary key table. | After Hologres was upgraded to V3.2.12, the behavior of the
|
|
|
|
P1 | When DLF Paimon foreign/external tables with | When |
|
|
|
P1 | When common table expressions (CTEs) are used, the split and unified execution results are inconsistent. | An execution failure occurred but was not reported to FE, ultimately leading to incorrect results. |
|
|
|
P1 | Even a s a user with required permissions, querying |
|
|
| Upgrade to the latest version. |
P0 | When you incrementally refresh dynamic tables from multi-stream JOINs, an issue occurs if only one stream has data and that data is retracted. This leads to incorrect refresh results that do not match query results. | The problem stems from a failure to correctly handle single-stream retractions, causing data marked for removal to remain. | V4.0.1 | V4.0.9 |
|
P1 | After you upgrade to V4.0, a worker may experience an out-of-memory (OOM) error. The error messages are similar to the following:
| V4.0 has an optimized memory structure to cache more data. However, this new structure contains a bug that affects how the Decimal data type is processed. As a result, an instance may generate a core dump if a table that contains a Decimal column is part of a HashJoin. | V4.0.0 | V4.0.10 (to be released) |
|
P1 | Querying a MaxCompute Append Delta Table with data returns an empty result. | The Split Cache causes the query to return an empty result. |
| V4.0.9 |
|
P0 | In V4.0, duplicate primary key data occurs in a logical partitioned table with a clustering key. | In V4.0, the multi-partition flush optimization for logical partitioned tables has a bug in its cluster index implementation. This bug can cause corrupted indexes within AliORC files, rendering existing data inaccessible or creating duplicate records during updates due to failed data retrieval. |
| V4.0.9 |
|
P1 | After upgrading to V4.0, a worker out-of-memory (OOM) error occurs. The error message is similar to the following:
| V4.0 optimized the memory structure to cache more data. However, the new memory structure underestimates required memory, which causes the worker OOM. |
| V4.0.7 |
|
November 2025
Level | Description | Cause | Affected versions | Fixed versions | Workaround |
P1 | When you use Flink for real-time writes, deleting a user and then creating a new user with the same name but different permissions will result in permission errors, even after reconnecting. | Issue with the permission cache update strategy in the FixedFE component. |
|
|
|
P1 | When incrementally refreshing dynamic tables in stream mode, performing | Duplicate |
|
|
|
P2 | General-purpose instances encounter a "shard group not found" error when executing | Incorrect default parameter passed during the rebalancing process for general-purpose instances. |
|
|
|
P2 | During instance scaling, a rare | Hologres was expected to retry |
|
|
|
P2 | Refreshing dynamic tables sourced from MaxCompute after switching to the Common Table access method results in the error: | The method of passing query plans for dynamic tables differs from regular OLAP queries. This difference causes binary data corruption during transmission, leading to filter parsing failures. |
|
|
|
P2 | When using the standard PostgreSQL authorization model, users with | Permission changes were not effectively applied to the cache used for the refresh identity, leading to outdated permission checks. |
|
|
|
P2 | Querying DLF data with a range filter on a | The engine incorrectly used |
|
|
|
P2 | Inserting fewer than 10 records into a table that has a boolean primary key column results in the error: | The Query Engine converts |
|
|
|
P2 | Using remote UDFs results in the following error: | Issues with multithreaded processing during UDF invocation led to the final errors. |
|
|
|
P1 | If a source table undergoes compaction followed immediately by a refresh, incremental data for dynamic tables in stream mode may become out-of-order. | Incremental data for the same key was consumed out of order, leading to incorrect results in the sink table. |
|
|
|
P1 | When rebuilding a physical partitioned table to a logical partitioned table:
| There is an error in the binlog handling logic during the execution of |
| To be fixed | |
P2 | When using | This error occurs due to a permission check failure when attempting to read DLF tables via |
|
|
|
P2 | When using | Data masking settings are not correctly passed to the |
|
|
|
P0 | Higher-order functions applied to arrays with duplicate elements may incorrectly deduplicate the result. Examples: | The arrary calculation framework cannot properly handle duplicate elements. |
|
|
|
October 2025
Level | Description | Cause | Affected & fixed versions | Workaround |
P0 | Table Resharding Cleanup Failure: When using Table Resharding in HoloWeb, failed tasks that are canceled do not correctly clean up temporary tables. | Bug in HoloWeb's cleanup function. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | The | Incorrect handling of escaping by | Affected: All versions. Fixed: Use the Rebuild feature in V3.1 as an alternative. | Upgrade to the latest version and use the Rebuild feature instead. |
P2 | In the pay-as-you-go bill for Hologres Serverless Computing resources, the Instance ID field incorrectly displays as | Underlying configuration issue. | Affected: All versions (2025-09-09 16:00:00 to 2025-10-14 16:00:00). Fixed: All versions. Bills generated after 2025-10-14 16:00:00. | Process bills from the incorrect time period separately. |
September 2025
Level | Description | Cause | Affected & fixed versions | Workaround |
P0 | Backend processes may fail during Shard Rebalance operations (e.g., scaling, restarting) if multiple requests complete simultaneously. This can lead to instance read/write failures. | Bug in backend handling of concurrent requests during rebalancing. | Affected version: V3.0.9. Fixed: V3.0.14 and later. | Upgrade to the latest version. |
P0 | When you import data from a Hologres foreign table to an internal table, the adaptive import speed adjustment feature can cause data loss if all the following conditions are met:
| Adaptive import speed adjustment incorrectly handles data segments when external reads fallback to SQE. | Affected:
Fixed:
| Disable adaptive import at the instance level using the GUC parameter: |
P1 | After enabling data masking, |
| Affected:
Fixed version:
| Upgrade to the latest version. |
P1 | Dynamic tables stop auto-refreshing after an instance restart. | Exception in the backend scheduling system. | Affected:
Fixed:
| Upgrade to the latest version. |
P1 | For dynamic tables with logical partitions and auto-refresh, inactive partitions continue using incremental refresh instead of switching to full refresh, leading to continuous storage growth. | Incorrect handling of active partition states in dynamic tables. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | Setting a nullable clustering key for a dynamic table results in the error |
| Affected:
Fixed:
| Upgrade to the latest version. |
P2 | After batch import using | Primary key data mishandled during batch writes, preventing duplicate detection during real-time writes. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | The error | The GUC parameter | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | Querying a view containing a masked field after upgrading to V3.1 results in | Data masking incorrectly handles table names within views in V3.1. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | The SQL statement may hang when using |
| Affected:
Fixed:
| Upgrade to the latest version. |
August 2025
Level | Description | Cause | Affected & fixed versions | Workaround |
P1 | When a query request meets any of the following conditions, a worker node may hang when the query finishes. This can block subsequent Data Definition Language (DDL) operations and queries with a `LIMIT` clause on related tables:
| Bug in the query engine's resource cleanup process when a query finishes. | Affected:
Fixed:
|
|
P1 | Holo Client V2.6.0 fails to connect to Hologres instances using Alibaba Cloud AccessKey during specific daily periods, varying by client time zone. (e.g., UTC+8: 00:00-08:00, UTC-5: 19:00-00:00). This issue is client-specific, not instance version related. | Issue in Holo Client V2.6.0's time zone handling. | Affected: Holo Client V2.6.0. Fixed: Holo Client V2.6.1 and later. | Upgrade Holo Client to V2.6.1 or later. |
P0 | In Hologres V3.1, instances with dynamic tables consuming base table data in stream mode may enter a continuous restart loop when the dynamic table is read-only. This occurs because data flushing fails. | Data flushing failure triggers continuous instance restarts when dynamic tables are in a read-only state. | Affected:
Fixed:
| Upgrade to the latest version. |
July 2025
Level | Description | Cause | Affected & fixed versions | Workaround |
P2 | Data import using Serverless Computing data failures may leave intermediate files undeleted, increasing instance storage usage. | Intermediate file cleanup logic may fail during import. | Affected: 3.1.1. Fixed: 3.1.20 and later. |
|
P2 | Querying Iceberg tables in Data Lake Formation (DLF) returns empty results, with no data being returned. | File parsing error occurs when querying Iceberg tables. | Affected: 3.1.1 to 3.1.16. Fixed: 3.1.17 and later. | Upgrade to the latest version. |
P2 | When you create a table with a generated column, the query fails with the error | Optimizer incorrectly translates the generated column during query execution. | Affected: 3.1.1 to 3.1.16. Fixed: 3.1.17 and later. | Upgrade to the latest version. |
P1 | Dynamic table refresh operations fail with | Dynamic table incorrectly infers the type for | Affected: 3.1.1 to 3.1.15. Fixed: 3.1.16 and later. | Upgrade to the latest version. |
P2 | The | The | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | After deleting a dynamic table with incremental refresh in V3.1, its state table remains undeleted. | State table is not cleaned up correctly when a dynamic table with incremental refresh is directly deleted. | Affected: 3.1.1 to 3.1.12. Fixed version: 3.1.13. | Upgrade to the latest version. |
P2 | Using 64-bit RoaringBitmap functions (e.g., | Incorrect schema inference for 64-bit RoaringBitmap functions. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | Creating a dynamic table as a logical partitioned table fails with | Incorrect | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | Brief instance restarts may occur when querying a single-table materialized view that contains | Core dump occurs due to memory misalignment when calculating | Affected:
Fixed:
| Upgrade to the latest version. |
P1 | After you upgrade a Hologres instance to V3.0.41, memory usage slowly increases when you query a MaxCompute foreign table using the CommonTable path. | Memory leak occurs during MaxCompute foreign table queries through the CommonTable path. | Affected:
Fixed:
| Upgrade to the latest version. |
P0 | In certain concurrent scenarios with Serverless Computing, DML operations on a table while | Internal state synchronization issue in the engine during concurrent DML and table modification operations. | Affected:
Fixed:
|
|
June 2025
Level | Description | Cause | Affected & fixed versions | Workaround |
P1 | When scaling out a virtual warehouse instance, a compute node may occasionally restart. This can be triggered if a table has concurrent DML and compaction tasks while the virtual warehouse is being scaled out. | System bug related to concurrent DML and compaction tasks during virtual warehouse scaling. | Affected version: 3.0.1. Fixed: 3.0.28 and later. | Upgrade to the latest version. |
P1 | Unexpected instance restarts occur when using JSONB column-oriented storage optimization with a GIN index. | Incompatibility between JSONB column-oriented storage optimization and GIN indexes. | Affected version: 3.1.1. Fixed:
|
|
P2 | Instance restarts occur when refreshing a dynamic table if all its base tables are views. | Dynamic table processing of views as base tables during refresh causes a core dump. | Affected version: 3.1.8. Fixed: 3.1.9 and later. | Upgrade to the latest version. |
P2 | In incremental refresh mode for a dynamic table, if the query includes the ARRAY_AGG function and all data is filtered out by the Agg Filter, the result is empty instead of the expected null. | No apparent cause | Affected:
Fixed
| Upgrade to the latest version. |
P1 | When a time zone is specified in the property-based funnel function (finder_funnel), the calculation result is incorrect. Example SQL: |
| Affected version: 3.0.40. Fixed: 3.0.41 and later. | Upgrade to the latest version. |
P2 | In a virtual warehouse instance, the storage size returned by PG_RELATION_SIZE, PG_DATABASE_SIZE, and HOLOGRES.HG_RELATION_SIZE is incorrect. | Overestimation of storage size in virtual warehouse instances for these functions. | Affected version: 3.0.39. Fixed: 3.0.40 and later. | Upgrade to the latest version. |
P2 | Refresh fails with an internal error when there are multiple duplicate rows in the base table during a single refresh in incremental mode for a dynamic table. | Incremental refresh process mishandles multiple duplicate rows within a single refresh. | Affected version: 3.0.39. Fixed: 3.0.40 and later. | Upgrade to the latest version. |
P2 | Refresh fails with an internal error ( | Incremental refresh for multi-table JOINs cannot correctly process the presence of an ARRAY field. | Affected:
Fixed
| Upgrade to the latest version. |
P1 | Instance restarts when committing a transaction that writes to a logical partition if the number of partitions exceeds 5,200 due to high cardinality of partition key data. | Instance terminates abnormally due to exceeding the logical partitioned table partition limit (5,200) during transaction commit, causing a core dump. | Affected version: 3.1.1. Fixed: 3.1.9 and later. | Improve import task data quality by cleaning dirty data from the partition key to avoid creating excessive partitions. |
April 2025
Level | Description | Cause | Affected & fixed versions | Workaround |
P2 | When reading a MaxCompute foreign table, the error | An interface conversion error occurs when reading a MaxCompute foreign table. | Affected: 3.0.1 to 3.0.35. Fixed: 3.0.36 and later. | Upgrade to the latest version. |
P2 | An error occurs when using | The | Affected: 3.0.1 to 3.0.33. Fixed: 3.0.34 and later. | Upgrade to the latest version. |
P2 | When querying a data lake foreign table, the error | A data format conversion error occurs when reading the foreign table. | Affected: 3.0.1 to 3.0.30. Fixed: 3.0.31 and later. | Upgrade to the latest version. |
P1 | Memory usage may increase continuously when using the | The | Affected: 3.0.1 to 3.0.29. Fixed: 3.0.30 and later. | Upgrade to the latest version. |
P2 | When a CTE query contains a Nested Loop Join, the error | The optimizer incorrectly infers the JOIN ORDER. | Affected: 3.0.1 to 3.0.27. Fixed: 3.0.28 and later. | Upgrade to the latest version. |
P2 | When using the | The optimizer incorrectly infers the precision of the DECIMAL field. | Affected: 3.0.1 to 3.0.25. Fixed: 3.0.26 and later. | Upgrade to the latest version. |
P2 | When viewing the |
| Affected: 3.0.1 to 3.0.25. Fixed: 3.0.26 and later. | Upgrade to the latest version. |
March 2025
Level | Description | Cause | Affected & fixed versions | Workaround |
P2 | When you use a window function, such as | The window function incorrectly identifies | Affected: 3.0.24 and earlier. Fixed: 3.0.25 and later. | Upgrade to the latest version. |
P1 | When a distribution key is manually specified in a dynamic table, the setting does not take effect. | The engine infers incorrectly, causing the manually set distribution key to not take effect. | Affected: 3.0.24 and earlier. Fixed: 3.0.25 and later. | Upgrade to the latest version. |
February 2025
Level | Description | Cause | Affected & fixed versions | Workarounds |
P1 | When connecting to Hologres with a BI or developer tool, users without permissions can still see metadata for databases, schemas, and tables. | Access control is not strict enough for metadata visibility. | Affected: 3.0.23 and earlier. Fixed: 3.0.24 and later. | Upgrade to the latest version. |
P2 | When joining a MaxCompute foreign table with a hologres_fdw foreign table, the query fails with the error | A logic error is triggered when shard pruning occurs on the internal table during a join between a hologres_fdw foreign table and a MaxCompute foreign table. | Affected: 3.0.22 and earlier. Fixed: 3.0.23 and later. | Upgrade to the latest version. |
P2 | After upgrading a Hologres instance to V2.2, when using the | The optimizer incorrectly infers the precision of the DECIMAL type when the | Affected: 2.2.22 and earlier. Fixed: 2.2.23 and later. | Upgrade to the latest version. |
P2 | After you set a data masking rule for an account to | The system does not correctly evaluate the account's masking rule after data masking is set, leading to unexpected query results. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | When using JDBC mode to consume Hologres binary logs, the job throws exceptions (e.g., Binlog Convert Failed, Java heap space), or data reading from some shards stops and cannot continue. | During binary log consumption, if the downstream Flink operator experiences backpressure or other exceptions, source table data is not consumed promptly, causing backend timeout exceptions. Issues in the gateway's forwarding of exceptions to the client lead to data reading hangs or parsing failures. |
| Upgrade to the latest version and restart the Flink job. |
P2 | After enabling column-oriented storage optimization for a JSONB column with a bitmap index set, data writes cause flush and compaction to fail, leading to increased instance storage and memory usage. | A bug exists in how the JSONB column-oriented storage optimization feature handles enabling a bitmap index for the BINARY type. | Affected:
Fixed:
|
|
January 2025
Level | Description | Cause | Affected & fixed versions | Workarounds |
P2 | The | An incorrect calculation logic exists for the | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | When creating a foreign table with uppercase characters in the table name (e.g., | An incorrect case conversion occurs when reading a foreign table with uppercase characters in its name. |
| Upgrade to the latest version. |
P2 | When querying a data lake foreign table in DLF without configuring an OSS Endpoint, the error is reported: | Without a configured OSS Endpoint, the system cannot correctly route to the corresponding OSS table, causing the query to fail. |
| Upgrade to the latest version. Note After the upgrade, you can query successfully without configuring an OSS endpoint. |
2024
December 2024
Level | Description | Cause | Affected & fixed versions | Workaround |
P2 | During full and incremental refreshes of a dynamic table, if it contains a DECIMAL field, the error | The precision of the DECIMAL field is inferred incorrectly, which causes the refresh to fail. | Affected: 3.0.16 and earlier. Fixed: 3.0.17 and later. |
|
P2 | When the schemas of queries on both sides of a | The schema inference for | Affected: 3.0.16 and earlier. Fixed: 3.0.17 and later. | Upgrade to the latest version. |
P2 | When a dynamic table performs an incremental refresh and aggregates a SMALLINT field, an "unsupported" error is reported. | The support for the SMALLINT type in dynamic table incremental refreshes is incomplete. | Affected: 3.0 to 3.0.16. Fixed: 3.0.17 and later. | Upgrade to the latest version. |
P2 | After you upgrade a virtual warehouse instance, queries fail with the error | During the virtual warehouse upgrade, the table metadata is not updated promptly. Queries retrieve data from the old table metadata, which causes an error after the upgrade. | Affected:
Fixed:
|
|
P1 | After you upgrade Hologres to a version from 3.0.12 to 3.0.15, if a table has dynamic partitioning enabled and the partition key is of the TEXT type, the dynamic partition scheduling may fail. This can cause the creation of the partitioned table to fail. | An issue in the scheduling system's handling of TEXT partition keys causes an internal conversion to fail, which leads to table creation failure. | Affected: 3.0.12 to 3.0.15. Fixed: 3.0.16 and later. | Upgrade to the latest version. |
P1 | After you upgrade Hologres to a version between 3.0 and 3.0.13, queries on MaxCompute foreign tables become slower. | Starting from Hologres V3.0, permission checks for accessing MaxCompute table metadata were strengthened. This caused the frontend (FE) node to make multiple repeated calls, which reduced the performance of querying MaxCompute foreign tables. | Affected: 3.0 to 3.0.13. Fixed: 3.0.14 and later. | Upgrade to the latest version. |
November 2024
Level | Description | Cause | Affected & fixed versions | Recommendations |
P2 | When binary logging is enabled for a dynamic table in full refresh mode, the refresh fails with the error | The inference of hidden columns is inconsistent. | Affected: 3.0.11 and earlier. Fixed: 3.0.12 and later. | Upgrade to the latest version. Note We do not recommend enabling binary logging in full refresh mode. Each full refresh is equivalent to running |
P2 | In the SLPM permission model, dropping and then recreating the Orafce extension fails with the error | In the SLPM permission model, when the Orafce extension is dropped, the permissions of the user group are not fully cleaned up. This causes the user group to still exist when you try to recreate the extension, which prevents its successful creation. | Affected: 3.0.9 and earlier. Fixed: 3.0.10 and later. |
|
P2 | When a dynamic table contains a Decimal field, the refresh fails with the error | The precision of the Decimal field is inferred incorrectly, which causes a precision mismatch during the dynamic table refresh and leads to an error. | Affected: 3.0.9 and earlier. Fixed: 3.0.10 and later. |
|
P2 | The Plan column for queries that take longer than 10 seconds occasionally lacks EXPLAIN ANALYZE results in the metadata warehouse. | Queries that take longer than 10 seconds experience occasional reporting delays, which prevents the Plan column from collecting results. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | Analyzing a table with a BSI type fails with the error | The support for analyzing BSI type fields is incomplete, which causes the error. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | After you use | During the | Affected: 2.2.30 and earlier. Fixed: 2.2.31 and later. | Upgrade to the latest version. |
P2 | If you frequently run DDL operations on an instance and run a | When FE node versions are inconsistent, node relay can get stuck, which causes subsequent DDL operations to fail. If a | Affected: 2.2.26 and earlier. Fixed: 2.2.27 and later. | Upgrade to the latest version. |
P2 | An SQL statement that is too long exceeds the limit and reports the error: | Hologres has added a limit to the length of SQL statements, with a default value of 10,000,000. | Affected:
| You can remove the SQL length limit by setting the following parameter. |
September 2024
Level | Description | Cause | Affected & fixed versions | Workaround |
P1 | After a database starts its first DML transaction, if you run concurrent DDL operations on the same table in an SQL statement, the query may hang. | When a database uses a DML transaction for the first time, it acquires a table lock. If there are concurrent DDL operations on the same table, the system enters a loop of trying to create the table, which can cause a deadlock and make the query hang. | Affected: 2.2.24 and earlier. Fixed: 2.2.25 and later. | Upgrade to the latest version. |
P2 | For a Hologres table with a roaringbitmap field, when you create a Hologres cross-database foreign table using the | Foreign tables for cross-database queries do not support the roaringbitmap type. This should be checked when the foreign table is created. | Affected: 2.2.24 and earlier. Fixed: 2.2.25 and later. | Upgrade to the latest version. Note After the upgrade, if a foreign table in a cross-database query contains a roaringbitmap type, an error is reported directly, which indicates that the type is not supported. |
P2 | When you use the JDBC prepareStatement method, repeatedly running the | Repeatedly running the | Affected:
Fixed:
|
|
P2 | The `result_rows` and `affected_rows` values in the metadata warehouse Query Log do not match the actual values. | An error occurs when the metadata warehouse reports the `result_rows` and `affected_rows` values, which causes the reported values to not match the actual values. | Affected: 2.2.22 and earlier. Fixed: 2.2.23 and later. | Upgrade to the latest version. |
P2 | In a virtual warehouse instance, when the primary virtual warehouse is restarted, point queries (queries based on the primary key) on the secondary virtual warehouse may become slow. | When the primary virtual warehouse is restarted, the shards of the running virtual warehouse poll the status of the primary shard. This causes point queries to hang until all shards are recovered. | Affected: 2.2.21 and earlier. Fixed: 2.2.22 and later. | Upgrade to the latest version. |
P2 | When the sum of all elements in the result array of the `BSI_SUM` function exceeds 2^31, the result is incorrect. | The function mishandles data overflow situations. | Affected: 2.1.1 and later. Fixed version: To be fixed. |
|
P2 | When you connect to a Hologres instance, creating a new connection may occasionally time out or hang. | A process within a node occasionally hangs when connecting to the instance, which prevents this node from creating new connections. | Affected: Versions earlier than 2.2.23, 2.1.43, 2.0.46, and 1.3.71. Fixed: 3.0.4, 2.2.23, 2.1.43, 2.0.46, 1.3.71 and later. |
|
August 2024
Level | Description | Cause | Affected & fixed versions | Workaround |
P2 | In a virtual warehouse instance, if a virtual warehouse A is unavailable (for example, it is restarting), point queries on tables in the table group loaded by A from other virtual warehouses experience increased latency. | A bug exists in an internal module of the real-time read/write path. When a virtual warehouse performs a point query, it waits for the table group status, which increases latency. | Affected: 2.1.1 to 2.2.21. Fixed: 2.2.22 and later. | Upgrade to the latest version. |
P1 | When you use Fixed Plan for real-time writes with a queries per second (QPS) over 1 million, there is a small chance of write failures and instance restarts. | A bug exists in the memory manager of the real-time read/write path. | Affected:
Fixed:
| Upgrade to the latest version. |
July 2024
Level | Description | Cause | Affected & fixed versions | Workaround |
P1 | When you use `jdbc` or `jdbc_fixed` mode to read Hologres binary logs, if the Flink job encounters backpressure that causes a backend timeout, the Flink job may hang or trigger a failover. | When the gateway receives a timeout exception from the backend, an issue in returning the exception to the client causes data reading to hang or a data parsing failure. | Affected: 1.3 and later. Fixed: 2.2.21 and later. | Restart the job from the latest checkpoint and upgrade to the latest version. |
P2 | After V2.2, `COUNT DISTINCT` operations that use Shard Pruning (the execution plan includes a Shard Prune operator) are executed by the Parallel Query Engine (PQE), which degrades calculation performance. | After Shard Pruning is used, the execution plan for `COUNT DISTINCT` is inferred incorrectly, which causes it to be executed by PQE and affects query performance. | Affected: 2.2.1 to 2.2.18. Fixed: 2.2.19 and later. |
|
P2 | In the slow query log ( | The data for the | Affected: 2.2.1 to 2.2.18. Fixed: 2.2.19 and later. | Upgrade to the latest version. |
P2 | When you write to a partitioned child table, if the `COPY` column includes the partition key column and the partition value is 0, writing other non-zero values is also successful. This can lead to dirty data in the partition value. | When you write to a partitioned child table, if the copy column includes the partition key column and the partition value is 0, the system lacks a check for the partition value of 0. This allows dirty data to be written successfully. | Affected: 2.2.1 to 2.2.18. Fixed: 2.2.19 and later. | Upgrade to the latest version. |
P2 | When you explicitly set the time zone in the connection string to | After the time zone is specified in the connection string, PQE incorrectly calculates the time zone when it parses date functions, which leads to an incorrect result. | Affected: 2.2.1 to 2.2.18. Fixed: 2.2.19 and later. | Upgrade to the latest version. |
P2 | Using the | The | Affected: 2.2.1 to 2.2.18. Fixed: 2.2.19 and later. | Upgrade to the latest version. |
P0 | When you use the dynamic partition management feature, if | Starting from V2.2, the dynamic partition management feature supports custom scheduling start times. However, the time calculation for monthly partitions is incorrect. | Affected: 2.2.1 to 2.2.17. Fixed: 2.2.18 and later. | Upgrade to the latest version. |
June 2024
Level | Description | Cause | Affected & fixed versions | Workarounds |
P1 | Running and | Starting from V2.2, MaxCompute foreign table operations require authentication through a service-linked role (SLR). Because of a current implementation issue, users who have already created an SLR will encounter a foreign table access failure when they run You may be unable to access a foreign table when using the | Affected: 2.2.1 to 2.2.14. Fixed: 2.2.15 and later. | Upgrade to the latest version. |
P1 | If the source table contains duplicate data, running | When you run | Affected: 2.2.13 and earlier. Fixed: 2.2.14 and later. | Upgrade to the latest version. |
p2 | When you use Flink to read Paimon data and write it to Hologres, the Paimon VARCHAR data format is inconsistent with the Hologres data format. | Hologres incorrectly converts Paimon VARCHAR data, which results in garbled characters. | Affected: 2.2.12 and earlier. Fixed: 2.2.13 and later. | Upgrade to the latest version. |
p2 | The | To utilize indexes, PostgreSQL defines comparison rules for NaN and other numbers, which treats NaN values as equal and greater than any non-NaN value. However, Hologres follows the C++ standard comparison rules, where NaN values are not equal to each other. This causes the results to be inconsistent with PostgreSQL. | Affected: 2.1.37 and earlier. Fixed:
| Upgrade to the latest version. |
May 2024
Level | Description | Cause | Affected & fixed versions | Workaround |
P2 | When you use Fixed Plan to query multiple identical primary key values (for example, | Fixed Plan does not deduplicate filter conditions for the same primary key. | Affected: 2.2.8 and earlier. Fixed: 2.2.9 and later. |
|
P1 | During rebalancing, if you perform schema change operations, the instance becomes unable to perform normal writes and queries. | During rebalancing, when the delay between a shard's leader and follower is less than 10 seconds, a switch between the follower and leader occurs. If a user performs a schema change operation at this time, the state of the storage engine (SE) becomes abnormal. This prevents the instance from performing normal write and query operations. In Hologres V2.1, this issue is more likely to occur because the rebalancing mechanism is automatically triggered when an instance has an empty worker node. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | After you upgrade a Hologres instance to V2.1.25 or later, when you run the | For the | Affected: 2.1.25 to 2.1.32. Fixed: 2.1.33 and later. |
|
P2 | When you use FixedFE (corresponding to the | When permissions change in the SLPM model, FixedFE does not refresh its cache in time. This causes the error to be reported even though the user has the required permissions. | Affected: 2.0.31 and earlier Fixed: 2.0.32 and later. | Upgrade to the latest version. |
April 2024
Level | Description | Cause | Affected & fixed versions | Workaround |
P2 | When you use the `datediff` function to calculate the difference between two times in a specified unit, the result is occasionally off by 1. | A logic bug exists in the function's calculation. | Affected version: 2.0.31. Fixed: 2.1.27 and later. | Upgrade to the latest version. |
P2 | After you upgrade a Hologres instance to V2.1.26, the Query memory in the instance's memory distribution usage metric slowly increases. | After the upgrade to V2.1.26, when a query encounters an OOM issue, the memory metric is counted repeatedly, which causes the memory-related metrics in monitoring to increase. Note The actual memory in the instance does not increase. Only the monitoring statistic is repeated. | Affected version: 2.1.26. Fixed: 2.1.27 and later. | Upgrade to the latest version. |
P1 | After you upgrade a Hologres instance to V2.1, when you query a MaxCompute foreign table in the instance, the instance's memory slowly increases, query performance fluctuates, or more OOM errors occur. | When you query a MaxCompute foreign table using a V2.1 instance, open files are not closed in time. This causes a slow memory increase, which affects query performance or instance stability. | Affected: 2.1.1 to 2.1.25. Fixed: 2.1.26 and later. | Upgrade to the latest version. |
P2 | In V2.1, the storage capacity of a primary-secondary instance or a virtual warehouse instance increases. This is shown by the total storage usage in monitoring metrics being greater than the total storage calculated by the `pg_relation_size` function. | In V2.1, old files in a primary-secondary instance or a virtual warehouse instance are not reclaimed in time. This causes the storage capacity to grow and the monitored storage amount to increase. | Affected: 2.1.1 to 2.1.25. Fixed: 2.1.26 and later. | Upgrade to the latest version. |
P1 | When Flink consumes Hologres binary logs via JDBC mode, the consumption rate is high at the start of the job but then continuously decreases. | A memory leak issue exists when Flink consumes Hologres binary logs via JDBC mode. | Affected: VVR versions earlier than 6.0.7. Fixed: VVR 6.0.7 and later. | Upgrade to the latest version. |
March 2024
Level | Description | Cause | Affected & fixed versions | Workarounds |
P0 | Query resources are not released, which leads to:
| When a query involves only shard data and uses PQE or SQE to query MaxCompute foreign tables or data lake foreign tables, the system does not actively trigger resource recovery after the query is completed. Resources can only be recovered by the Query Master's garbage collection mechanism. When the Query Master is under heavy load, queries hold many resources because of a delayed exit, which prevents subsequent queries from running. | Affected: 2.1.23 to 2.1.24. Fixed: 2.1.25 and later. | Upgrade to the latest version. |
P1 | Adding a bitmap to a dictionary-encoded column causes incorrect query results for a not-null column, which returns null values. | When a bitmap is added to a dictionary-encoded column, the backend does not apply the bitmap to all data when building it, which leads to incorrect results. | Affected: 2.1.21 and earlier. Fixed: 2.1.22 and later. | Upgrade to the latest version. |
P1 | When you use Fixed Plan for real-time data writes or point queries, the instance's memory usage gradually increases. | In Hologres V2.1, the Fixed Plan execution engine was refactored. The operators it created for read/write tables were not cleaned up in time, which caused a memory leak. | Affected: 2.1.1 to 2.1.9. Fixed: 2.1.10 and later. | Upgrade to the latest version. |
P1 | When you cancel a query that is running on PQE, there is a chance of a process deadlock on the corresponding PQE node, which prevents it from handling new PQE requests. | A bug in the PQE I/O concurrency control feature can be triggered when PQE receives a cancel signal. This affects all PQE processes. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | When you use the `INTERSECT` or `EXCEPT` function with shard pruning, the execution result is inconsistent with the actual result. For example, when shard pruning is active, running the following example SQL may return a result that does not match the actual result. | The `INTERSECT` or `EXCEPT` function is currently implemented using `JOIN`. During shard pruning, the handling of the `INTERSECT` or `EXCEPT` function leads to an incorrect execution plan and an incorrect result. | Affected: 2.1.21 and earlier. Fixed: 2.1.22 and later. | Upgrade to the latest version. |
P2 | When a PQE process exits, there is a small chance it will hang. Over time, this can accumulate and prevent PQE from handling new requests. | When a PQE process exits, a concurrency issue between the RPC exit thread and the main thread prevents the RPC exit thread from finishing normally. This in turn prevents the PQE process from exiting smoothly. | Affected: 2.1.0 to 2.1.14. Fixed: 2.1.15 and later. | Upgrade to the latest version. |
P2 | When you run concurrent PQE queries, the instance may briefly restart. | In Hologres V2.0 and earlier, PQE has a multi-threaded concurrency issue that can cause the instance to have a core dump. | Affected: 2.0 and earlier. Fixed: 2.1.0 and later. | Upgrade to the latest version. |
P2 | When you run an SQL statement that contains | The optimizer generates an incorrect plan, which causes a core dump. | Affected: 2.0 and earlier. Fixed: 2.1.0 and later. | Upgrade to the latest version. |
February 2024
Level | Description | Cause | Affected & fixed versions | Workaround |
P2 | Converting a TEXT type to a BIT type and then to a BIGINT type fails with the error: | The support for converting TEXT to BIT is incomplete, which causes the error: | Affected: 2.1.20 and earlier. Fixed: 2.1.21 and later. | Upgrade to the latest version. |
P2 | For a row-oriented table with a primary key, if the clustering key is set to an empty string, a metadata inconsistency occurs, which causes queries to hang. Example table creation SQL: | When the clustering key of a row-oriented table is an empty string and is inconsistent with the primary key, the FE node fails to respond to requests. This causes metadata inconsistency and leads to query stalls. | Affected: 2.1.20 and earlier. Fixed: 2.1.21 and later. |
|
P2 | If a query's filter condition (`WHERE`) includes the clustering key and uses | When the filter condition includes the clustering key and | Affected: 2.1.19 and earlier. Fixed: 2.1.20 and later. | Upgrade to the latest version. |
P1 | In Hologres 2.1, the instance's memory usage slowly increases. When you query a MaxCompute foreign table, the | After the upgrade to V2.1, the underlying data files of foreign tables are not closed in time. This causes a memory leak and occasionally triggers an instance restart. | Affected: 2.1.10 to 2.1.18. Fixed: 2.1.19 and later. | Upgrade to the latest version. |
P2 | The precision of the result of multiplying DECIMAL types is not as expected. Example SQL: | The default decimal precision for DECIMAL multiplication is 18. When two DECIMAL types are multiplied and the number of decimal places exceeds 18, the data is truncated before calculation. This leads to an unexpected result. | Affected: 2.1.18 and earlier. Fixed: 2.1.19 and later. |
|
January 2024
Level | Description | Cause | Affected & fixed versions | Workarounds |
P2 | After you upgrade to Hologres V2.1, running | Hologres V2.1 FrontEnd incorrectly increased the replay cache time. This slows down the DDL replay when a DML operation is run after the same DDL. | Affected: 2.1.1 to 2.1.14. Fixed: 2.1.15 and later. | Upgrade to the latest version. |
P2 | The | In SQL, when the | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | Using the | The | Affected: 2.1.1 to 2.1.12. Fixed: 2.1.13 and later. | Upgrade to the latest version. |
P2 | Using | For full table scans with a `LIMIT`, Hologres uses lazy loading. Scanning too much data at once causes it to hang. | Affected:
Fixed:
| Upgrade to the latest version. |
P2 | After an instance is restarted for operations, such as restarting, upgrading, or scaling, MaxCompute direct reads of Hologres foreign tables may occasionally cause tasks to hang. | For Hologres tables, the backend periodically triggers metadata updates. After an instance restarts, the system refreshes the table metadata again. MaxCompute direct reads fail to retrieve the metadata status in time, which causes the task to hang. | Affected:
Fixed:
| Upgrade to the latest version. |