2026

Updated at:

This topic provides the release notes for minor engine versions of PolarDB for PostgreSQL and .

Note

  • You can view the minor engine version number in the console or run the SHOW polardb_version; statement.

  • The minor engine version number for PolarDB for PostgreSQL was updated to a 6-digit format on February 26, 2025. For more information, see Change details.

2.0.14.20.47.0 (August 2026)

New features

Description

Related documentation

Enterprise features

Defers the mmap of anonymous shared memory until fork, which improves child process creation performance.

-

Supports the pgque extension.

Improves the view hints feature: referencing the same view multiple times no longer produces conflict warnings, and configuring hints on a view no longer blocks concurrent queries on that view.

-

Stores logical replication SnapBuild snapshots in shared storage. After a failover, the new primary node can reuse existing snapshots, which avoids could not map filenode errors and silent data loss, and shortens the catch-up time after reconnection.

-

Improves the filtering display of event triggers and removes unnecessary WARNING messages. Lifts the drop protection on 32 non-core extensions to ease administration.

-

Disables the creation of the file_fdw extension by default (even for superusers) to enhance file access security.

-

IMCI

The IMCI supports the roaringbitmap data type.

In-Memory Column Index (IMCI)

The IMCI supports standby nodes.

Adds a columnar-execution fallback flag to audit logs. When polar_csi_enable is enabled, a statement that falls back from the IMCI to PostgreSQL execution is prefixed with the /*[cf]*/ flag in the audit log, while a statement that is successfully executed in the IMCI still uses the /*[c]*/ flag.

Supports IMCI queries when a subquery references a table that has an IMCI.

Incremental materialized view

Supports using the IMCI to perform full builds and refreshes of incremental materialized views (DIMVs).

Incremental materialized views

Bug fixes

Description

Fixes an issue where data is duplicated in the ON COMMIT mode of incremental materialized views when triggers are nested.

Prohibits creating an IMCI on a table with REPLICA IDENTITY NOTHING to prevent data inconsistency caused by lost DELETE operations.

Fixes an issue where session information functions return DuckDB internal values in the IMCI path.

Fixes an issue where the IMCI path drops the OVERRIDING clause in INSERT INTO SELECT statements.

Fixes an issue where read-after-write inside a PL/pgSQL procedure was not intercepted for the IMCI, causing IMCI queries to be unable to read the data written by the current transaction.

Fixes a lock level issue during CONCURRENTLY builds of an IMCI to avoid excessive blocking of concurrent DML.

Fixes a cluster crash caused by the incorrect function signature of pg_logical_emit_ddl_message in the polar_catalog extension.

Fixes an issue where a parallel query could crash the cluster in specific privilege scenarios, such as switching identity in a non-superuser session.

2.0.14.20.46.0 (July 2026)

New features

Description

Related documentation

Enterprise features

Blocks the hostaddr parameter in dblink/postgres_fdw connection strings to prevent bypassing channel security and redirecting connections to arbitrary IP addresses.

-

Removes the misleading WARNING logs emitted by the SPI module when a tuple table is freed multiple times, to avoid interfering with troubleshooting.

-

Allows the polar_create_table_with_full_replica_identity parameter to be modified in the console. When enabled, newly created tables use the REPLICA IDENTITY FULL attribute by default, which records the full row image for logical replication.

-

Allows the nls_date_format, nls_timestamp_format, and nls_timestamp_tz_format parameters to be modified in the console. These parameters customize the default display format for DATE, TIMESTAMP, and TIMESTAMPTZ values.

-

Enables branch coverage in the coverage toolchain.

-

Optimizes the restrictions on global-index partitioned tables to allow ADD PARTITION/ATTACH PARTITION to be executed inside a transaction block.

-

Adds the GUC parameters polar_xlog_record_buffers and polar_instance_spec_normal_mem to configure the instance-specific memory and the WAL (write-ahead log) record buffer size.

-

Supports adding optimizer hints to a view. Any query that uses the view honors the hints.

-

Supports index scan on user-defined volatile functions.

-

Updates the pgvector extension (vector search) and upgrades the high-dimensional index implementation.

PGVector (vector retrieval)

Fixes the issue where the timestamp for the %m parameter in audit logs is never updated.

-

Adds two built-in roles, NOTIFICATIONS_ADMIN and NOTIFICATIONS_USER, which can be created through the polar_builtin_role extension to manage notification and alert permissions.

-

Under the extended protocol, static-partition SQL statements no longer default to a generic plan, which reduces performance jitter for parameterized queries.

-

IMCI

Improves the buffer usage of the IMCI on read-only (RO) nodes.

-

Optimizes data synchronization performance for the DECIMAL type.

-

Incremental materialized view

Incremental materialized views now support any aggregate (AGG) function in their definitions.

-

Bug fixes

Description

Fixes the error when MERGE INTO statement is used together with an outer join (Outer Join).

Fixes the phantom-row issue in the IMCI after the primary-key column is modified by UPDATE.

Fixes the backend SIGSEGV caused by EXPLAIN EXECUTE when the IMCI path is active.

Fixes the incremental-refresh problems of incremental materialized views (DIMV): mlog was created abnormally on subpartitions of a partitioned table, and NaN/Infinity float values caused incorrect results.

Fixes the error in multi-table JOIN materialized-view incremental refresh when the GROUP BY key and an extreme-value row are modified at the same time.

Fixes the attribute-number (attnum) parsing error of IMCIs under mixed ALTER TABLE ADD/DROP COLUMN operations.

Fixes the stability issue of incremental materialized views under DEFERRABLE UNIQUE constraints and trigger-exception scenarios.

Fixes the pg_dump crash when the database contains an incremental-materialized-view log (mlog).

Fixes the intermittent errors that occur when creating connections under high concurrency with the Profile feature enabled.

Fixes the inconsistency between the auto-generated suffix casing and the original name when automatic renaming happens on index-name conflicts.

Fixes the possible truncation of IMCI VARCHAR(N) values during queries.

Fixes the incorrect incremental-refresh result of ON DEMAND incremental materialized views when a user-defined self-referencing trigger fires early and modifies rows in the same table.

Fixes the security vulnerability (CVE-2023-22847) where row-level security (RLS) policies are not correctly applied to incremental materialized views (DIMV).

2.0.14.20.45.0 (June 2026)

New features

Description

Related documentation

Enterprise features

Merges community version REL_14_21 and fixes issues introduced during the merge.

-

Adds support for the double password feature, controlled by the GUC parameter polar_enable_double_password. This feature is disabled by default.

-

Adds support for user password complexity checks.

-

Adds the global parameter polar_login_case_insensitive to control case-insensitive behavior for usernames and database names during login.

-

Adds support for Memoize Correlated Sublink optimization, which significantly accelerates correlated subqueries in scenarios where external parameters change infrequently.

-

The IS NOT DISTINCT FROM expression now supports Hash Join.

-

Adds support for pull-up optimization for subqueries that contain volatile functions.

-

Adds the polar_enable_nextval_in_readonly_txn parameter to allow read-only transactions on the primary node to execute nextval().

-

Adds a WAL prefetch process to the standby node to improve replay efficiency.

-

Partitioned tables now support row-level triggers.

-

Triggers now support AFTER INSERT OR UPDATE OR DELETE OF composite events.

-

The DROP flashback feature is now implemented natively. This resolves an issue where the feature failed in a distributed cluster because utility hook interception skipped distributed plugins.

-

The UNION operator now preserves the input order in its output.

-

Oracle engine parameters are no longer displayed in the PostgreSQL engine.

-

Adds support for modifying the Type Header field in pgAdmin.

-

The \d+ command now supports displaying the disabled status of constraints.

-

Adds the pg_jieba.optimize_memory configuration parameter, which allows you to switch to a new mmap memory sharing mode. In multi-backend deployment scenarios, this can reduce physical memory usage (VmRSS) by approximately 83%.

-

Optimizes tokenization of English tokens for pg_jieba.

pg_jieba (Chinese Word Segmentation)

Updates the rum extension to version 1.3.15.

rum (Full-Text Search Acceleration)

Updates the pgvector extension to version 20240422, which upgrades the implementation of high-dimensional indexes.

pgvector (Vector Retrieval)

Adds a time zone synchronization control feature to the PLV8 extension.

-

IMCI

The IMCI now supports the NUMERIC Infinity type.

IMCI

The IMCI now supports synchronous column addition. By default, attempting to delete a column already in the index reports an error to prevent accidental data loss.

Incremental materialized view

Adds support for automatically refreshing incremental materialized views based on an Interval configuration.

-

Adds support for nested definitions of incremental materialized views and for automatic nesting of unsupported view definitions.

-

Adds support for using window functions in incremental materialized views.

-

Optimizes the Mlog purge logic for incremental materialized views so that it is not affected by logical replication slots.

-

Bug fixes

Description

Fixes a performance issue with the DynamoDB transaction interface in high-concurrency scenarios.

Fixes instability issues in scenarios involving distributed clusters and IMCIs.

Fixes an issue where duplicate indexes with the same name could be created.

Fixes an error when running VACUUM on a global index after deleting a large number of partitions.

Fixes an issue where the standby node would fail an assertion because it did not respond to InvalidCache messages while in the smgrcache state.

Fixes an issue where the Vacuum Truncate timeout setting did not take effect.

Fixes a crash issue with the IMCI when processing multiple statements.

2.0.14.20.44.0 (May 2026)

New features

Description

Related documentation

Enterprise features

Enables large-table optimization by default for new clusters.

-

Accelerates the creation of new connections in scenarios with high volumes of short-lived connections.

-

Supports controlling the query length in the auto_explain output to prevent long SQL statements from making the execution plan unreadable.

-

Adds the polar_skip_null_char_in_string parameter to ignore null characters (\0) in strings.

-

Adds support for Phase 2 rules and features of the SQL audit plugin.

-

Adds support for single-table random recommendations.

-

Updates the pg_bigm (fuzzy search) plugin to community version 2025.09.03.

pg_bigm (fuzzy search)

Supports backing up a standby node without checking if Full Page Write (FPW) is enabled.

-

The kernel now supports debugging with non-privileged accounts.

-

Adds support for passing parameters to DOSTMT through JDBC.

-

Columnstore index

UPSERT now supports aliases.

IMCI

Adds support for setting the maximum degree of parallelism for the IMCI engine at the connection level.

polar_csi_stat_sync now shows the synchronization status between the row store and columnstore.

Incremental materialized view

Adds support for asynchronous refresh of incremental materialized views.

-

Adds support for performance monitoring of incremental materialized views.

-

Adds support for roll-up of partitioned materialized views.

-

DynamoDB compatibility

Adds support for ReturnItemCollectionMetrics.

DynamoDB compatibility

Bug fixes

Description

Fixes an issue where polar_superuser could not create the ltree extension.

Fixes an issue where EXPLAIN REFRESH MATVIEW caused the cluster to crash.

Fixes a pointer issue in Expand.

Fixes a crash caused by improper memory context handling during a ROLLBACK TO operation.

Fixes an issue in the Makefile where a missing PG_CONFIG could cause version number retrieval to fail.

Fixes an out-of-bounds index issue where a cursor in a subfunction uses package variables.

Fixes the lookup logic for PUBLIC synonyms.

Fixes a crash in PL/SQL caused by improper memory context switching.

Fixes an issue where a stored procedure returns a XX000 internal error when called via a parameterized anonymous block after a ROLLBACK is executed in its EXCEPTION handler.

Fixes missing object validation during PL/SQL stored procedure checks.

Fixed an issue where memory for the RETURN value was corrupted in PL/SQL functions that contain both SAVEPOINT and EXCEPTION blocks.

Removes the dependency of the USER_ROLE_PRIVS view on CURRENT_USER.

Fixes stability issues in PL/SQL.

Fixes a case-sensitivity issue with column names in composite type constructors.

Fixes an issue where a PL/SQL local subprocedure could not correctly accept a record field from a CURSOR FOR loop as an actual parameter when processing parameters of a local type.

Fixes a SIGSEGV error that occurs when passing a regular array to an associative array.

2.0.14.20.43.0 (April 2026)

New features

Description

Related documentation

Enterprise features

Adds support for pushing down JOIN conditions into UNION ALL/UNION/INTERSECT subqueries to build LATERAL subqueries.

-

Adds support for including the string length and content in error messages when inserted data exceeds the maximum length for a char/varchar column.

-

IMCI

Adds support for using an IMCI in a distributed environment.

Distributed IMCI

Adds support for adding an IMCI flag to the audit log.

-

Adds support for an IMCI task queue view.

-

Performance improvements

Description

Improves the replay performance of IMCI.

Bug fixes

Description

Fixes an issue where IMCI experienced slow memory growth.

Fixes an issue where IMCI caused continuous growth of temporary disk space.

Fixes an issue where RSC improperly handled pages that were extended before a crash.

2.0.14.20.42.0 (March 2026)

New features

Description

Related documentation

SQL capabilities

Adds support for restricting user logins to specific IP addresses.

-

Adds support for timestamp (TSO)-based point-in-time recovery (PITR).

-

Adds support for the DynamoDB ReturnValuesOnConditionCheckFailure, UpdateTable, and TimeToLive features.

Compatibility and limitations

Adds support for modifying the password_encryption parameter.

-

Plugins

Adds support for the pgmq plugin.

-

Adds support for the PolarDB sequence synchronization plugin.

-

Performance improvements

Description

Optimize relation size cache (RSC) Gist WAL log replay performance.

Optimize GIN WAL log replay performance with RSC.

Improves the efficiency of SQL value functions.

Bug fixes

Description

Fixes a TOAST update failure in the In-Memory Column Index (IMCI).

Fixes an out of memory (OOM) issue in the In-Memory Column Index (IMCI) caused by large query results.

Fixes an issue where DuckDB memory usage increased slowly.

Fixes an issue where the polar_superuser role could not use pg_squeeze.

Fixed an issue where dynamic changes to the polar_scc_enable parameter for global consistency did not take effect immediately.

2.0.14.20.41.0(February 2026)

New features

Category

Description

Related documentation

Compatible with community PostgreSQL 14.20.

Community PostgreSQL 14.20

SQL capabilities

The statement outline feature now supports normalizing a values list.

statement outline

Added support for partitioned materialized views.

-

You can now use IMCI to accelerate materialized view refreshes.

IMCI

Added support for comparison operators between the varchar and char data types.

-

Added new built-in data types and variables.

-

You can now directly specify partition names in DML operations.

-

Improved memory management for the global plan cache (GPC).

global plan cache (GPC)

You can now use different letter cases (such as all uppercase or all lowercase) for the type name in a CREATE TYPE statement and its constructor.

-

You can now use the DISABLE keyword in the ALTER TABLE statement when adding foreign key and CHECK constraints. This allows you to add constraints in a disabled state and enable them later.

-

IMCI now supports data synchronization for two-phase commit (2PC) transactions.

IMCI

You can now use log as a stored procedure name and call it directly in PL/SQL.

-

You can now create an index with the same name as a sequence. The system automatically appends the _idx suffix to the index name to prevent conflicts.

-

Extensions

The SQL audit extension now supports the schema parameter, which allows you to scope audit rules to a specific schema.

polar_sql_inception (SQL audit)

Added functions designed for industrial quality inspection scenarios.

Best practices for automated industrial quality inspection

Added the flashback query feature.

-

Updated the pgvector extension.

pgvector (vector retrieval)

IMCI

IMCI read-only nodes now support data consistency checks between row storage and column storage.

IMCI

IMCI now supports DECODE, NVL, and NVL2 expressions.

You can now use the statement outline feature to pin a query plan after you create an IMCI on a regular table.

Distributed

Optimized the timestamp ordering (TSO) sending logic for distributed transactions to reduce round-trip time (RTT) and improve processing performance.

Distributed transactions

Performance optimizations

Description

Optimized the statistics collection for I/O coalescing during dirty page flushing.

Optimized WAL write-related parameters.

The I/O coalescing feature for background writers (Checkpointer and BgWriter) is now enabled by default.

Bug fixes

Description

Fixed an issue where a rolled-back DDL operation could invalidate the IMCI.

Fixed an issue where using the set keyword in set operations caused an error.

Fixed an issue where partition management operations failed because of a missing internal node definition.

Fixed a security vulnerability in the age/polar_age extensions related to loading data from files.

Fixed a memory leak in parallel replay processes caused by SMgrRelationHash.

Fixed an issue where the anydata type could cause an error when calling stored procedures such as setNumber.

2.0.14.19.40.0 (2026.01)

New features

Description

Related documentation

You can now define materialized views by using subqueries, EXISTS expressions, and Common Table Expressions (CTEs).

This release adds the pg_partman extension to simplify managing partitioned tables based on time, number, or ID.

pg_partman (partition manager)

The rum extension has been upgraded to version 1.3.15. This enhances the performance and stability of full-text search based on RUM indexes.

rum (full-text search acceleration)

You can now use the polar_sql_inception (SQL review) extension.

polar_sql_inception (SQL review)

Distributed clusters now support parallel migration of shards from distributed replicated tables, which accelerates large-scale data migration.

-

Distributed clusters now support dynamic I/O pruning. This improves the performance of distributed queries by optimizing the data scan range.

-

In-Memory Column Index (IMCI) now supports the ALTER COLUMN TYPE operation, allowing you to modify column data types in an IMCI and enhancing its maintainability.

-

Performance optimizations

Description

Optimized the pre-allocation mechanism for the xlog queue.

Optimized the initialization process of the WAL buffer.

Optimized the sleep time of the WAL sender process on read-only nodes.

Optimized the processing logic for SMGR_TRUNCATE WAL logs in the relation size cache (RSC) to accelerate the replay speed on read-only nodes.

Improved the data synchronization efficiency of In-Memory Column Index (IMCI), which accelerates data retrieval for analytical queries in real-time hybrid transactional/analytical processing (HTAP) scenarios.

Bug fixes

Description

Fixed an issue where parameters set by using set_config were returned inconsistently when the proxy enforced keyword settings.

Fixed a crash that occurred after a column with a default value was added to a partitioned table.

Fixed an issue where the ai_ShowSchemaIndex function in the polar_ai extension returned incorrect results.