This topic lists the latest changes to PolarDB for PostgreSQL .

The following table describes the version correspondence between PolarDB for PostgreSQL and native PostgreSQL.

PolarDB for PostgreSQL version Native PostgreSQL version
V1.1.4 11.5.12
V1.1.3 11.5.12
V1.1.2 11.2
V1.1.1 11.2
V1.1.0 11.2

V1.1.4

Feature Description
New features
  • The Alidecoding plug-is added to incrementally synchronize Data Manipulation Language (DML) statements between databases.
  • The views of process statuses are added.
  • The views of time consumption statistics of SQL statements are added.
  • SQL errors are added in audit logs.
Fixed issues
  • Deadlocks may be caused by page prefetching in specific scenarios.
  • Files may not exist druing data page prefetching in specific scenarios.
Ganos 3.0
  • The subset raster in a NetCDF raster file that has multiple subsets can be imported by specifying a subset name.
  • The following functions are added to obtain and specify the custom metadata and time series information of rasters:
    • The ST_MetaDataItems function is added to obtain all items of custom metadata.
    • The ST_MetaData function is added to obtain custom metadata items of a raster and return custom metadata items in JSON format. For more information, see ST_MetaData.
    • The ST_SetMetaData function is added to specify a metadata item of a raster. For more information, see ST_SetMetaData.
    • The ST_BeginDateTime function is added to obtain the start time of a raster. For more information, see ST_BeginDateTime.
    • The ST_EndDateTime function is added to obtain the end time of a raster. For more information, see ST_EndDateTime.
    • The ST_SetBeginDateTime function is added to specify the start time of a raster. For more information, see ST_SetBeginDateTime.
    • The ST_SetEndDateTime function is added to specify the end time of a raster. For more information, see ST_SetEndDateTime.
    • The ST_SetDateTime function is added to specify the start and end time of a raster or the time information of a band. For more information, see ST_SetDateTime.
  • Supports to convert a raster into a BYTEA-type image.
    • The ST_AsImage function is added to convert a raster into a BYTEA-type image. For more information, see ST_AsImage.
    • The ST_AsPng function is added to convert a raster into a BYTEA-type PNG image. For more information, see ST_AsPNG.
    • The ST_AsJPEG function is added to convert a raster into a BYTEA-type JPEG image. For more information, see ST_AsJPEG.
  • GeomGrid data type and operations are added.
    • The GeomGrid data type is added. For more information, see GeomGrid usage notes.
    • The ST_AsText function is added to convert a raster into a BYTEA-type image. For more information, see ST_AsText.
    • The ST_AsGeometry function is added to obtain the geometry-represented range of a grid. For more information, see ST_AsGeometry.
    • The ST_AsBinary function is added to convert a grid into a binary structure. For more information, see ST_AsBinary.
    • The ST_AsBox function is added to convert a grid into a box structure. For more information, see ST_AsBox.
    • The ST_AsGrid function is added to query the grids that intersect with a geometry. For more information, see ST_AsGrid.
    • The ST_GridFromText function is added to convert a grid from a string into a GeomGrid structure. For more information, see ST_GridFromText.
    • The ST_GridFromBinary function is added to convert a grid from a binary structure into a GeomGrid structure. For more information, see ST_GridFromBinary.
    • The ST_Intersects function is added to identify the spatial relationship between two raster objects or between a raster object and a geometric object to determine whether the first specified object intersects with the second. For more information, see ST_Intersects.
    • The ST_Contains function is added to identify the spatial relationship between two raster objects or between a raster object and a geometric object to determine whether the first specified object contains the second. For more information, see ST_Contains.
    • The ST_Within function is added to identify the spatial relationship between two raster objects or between a raster object and a geometric object to determine whether the first specified object is within the second. For more information, see ST_Within.
  • Supports fast storage of vector data types.
    • The ST_BuildPyramid function is added to create a pyramid for a raster. For more information, see ST_BuildPyramid.
    • The ST_DeletePyramid function is added to delete a pyramid for a raster. For more information, see ST_deletePyramid.
    • The ST_Tile function is added to obtain vector data in the MVT format. For more information, see ST_Tile.
  • Out of memory may occurs when you create a pyramid in specific cases.
  • Trajectory objects fail to be created on January 1, 2000.
  • Trajectory objects may use ST_Intersection to return incorrect trajectory in specific scenarios.
  • A breakdown occurs during Ganos upgrade.
  • PolarDB for PostgreSQL is compatible with PostGIS 2.5.4.

V1.1.3

Feature Description
New features
  • The views of SQL execution statistics are added.
  • The views of queries per second (QPS) statistics are added.
  • The views of CGroup status statistics are added.
Fixed issues
  • Errors occur when the Segmented Least Recently Used (SLRU) algorithm is used to calculate the memory size.
  • RO reconstruction caused by a playback delay.
Ganos 2.8
  • The Cloud Optimized GeoTIFF (COG) files are supported. The pyramid information that is stored in COG files can be read.
  • The ST_AddZ function is added to specify the Z coordinate of a geometry based on the band of the raster converted from the geometry. For more information, see ST_AddZ.
  • The following functions are added to enhance capabilities to obtain spatial information about rasters based on pyramid levels.
    • The ST_AddZ function is added to obtain the coordinate range of a raster in the BOX format. For more information, see ST_Extent.
    • The ST_Envelope function is added to obtain the bounding box of a raster. For more information, see ST_Envelope.
    • The ST_Convexhull function is added to obtain the minimum convex geometry that encloses all geometries within a raster. For more information, see ST_ConvexHull.
    • The ST_Height function is added to obtain the height of a raster in pixels. For more information, see ST_Height.
    • The ST_Width function is added to obtain the width of a raster in pixels. For more information, see ST_Width.
  • Performance issues occur when some raster objects that are stored in Object Storage Service (OSS) choose the chunking dimension of 1 × n. Storage parameters are added for you to customize the size of the chunking dimension.
  • Fixes the issue that the returned values are different from the coordinates when you use the ST_Values ​​function to obtain values in certain directions. For more information, see ST_Values.
  • Fixes the issue that the ST_BestPyramidLevel function returns a negative value in some cases. For more information, see ST_BestPyramidLevel.
  • Fixes the issue that ST_BuildPyramid function may rebuild a pyramid in some cases. For more information, see ST_BuildPyramid.
  • Fixes the issue that the block table is not deleted when you truncate a raster table.
  • Fixes the issue that the ST_ExportTo function is invalid for CreateOption in some cases. For more information, see ST_ExportTo.
  • The ST_ClearChunks function fails if a table name contains a mixture of uppercase and lowercase letters.
  • Fixes the issue that an external pyramid cannot create an overview in some cases.
  • Fixes the issue that rasters with external pyramids cannot create internal pyramids.
  • Fixes the issue that incorrect results are returned when you calculate the raster data that contains NaN values.

V1.1.2

Feature Description
New features
  • Allows to write temporary tables to local storage. This improves the read and write performance of temporary tables.
  • Allows accounts with the polar_superuser privilege to perform logical replication of events that are captured by the event trigger.
  • Supports requests from custom resource isolation groups.
Performance optimization Optimizes the recovery process after a crash. This reduces the amount of time that is required for recovery from certain extreme cases.
Fixed issues Accounts with the polar_superuser privilege cannot use the index advisor.
Ganos 2.8
  • The following enhancements are added to access raster metadata:
    • The ST_XMin function is added to obtain the minimum value in the X direction of raster data. For more information, see ST_XMin.
    • The ST_YMin function is added to obtain the minimum value in the Y direction of raster data. For more information, see ST_YMin.
    • The ST_XMax function is added to obtain the maximum value in the X direction of raster data. For more information, see ST_XMax.
    • The ST_YMax function is added to obtain the maximum value in the Y direction of raster data. For more information, see ST_YMax.
    • The ST_ChunkHeight function is added to obtain the height of a raster tile. For more information, see ST_ChunkHeight.
    • The ST_ChunkWidth function is added to obtain the width of a raster tile. For more information, see ST_ChunkWidth.
    • The ST_ChunkBands function is added to obtain the number of bands in a raster tile. For more information, see ST_ChunkBands.
  • The ST_SrFromEsriWkt function is added to convert the format of a spatial reference string from Esri to Open Geospatial Consortium (OGC). For more information, see ST_SrFromEsriWkt.
  • Raster data files can be compressed by the Zstandard (zstd) or Snappy compression tool.
  • Point cloud files can be copied in binary mode.
  • The PROJ_LIB and GDAL_DATA environment variables can be configured, and relevant data can be deployed.
  • The database breakdown issue that is caused by an invalid Object Storage Service (OSS) path is fixed.
  • After the raster data is imported to databases, the spatial reference identifiers (SRIDs) of some raster data are inconsistent with original SRIDs.

V1.1.1

Feature Description
Plug-ins
  • The polar_proxy_utils plug-in is added to manage proxy-related features. This plug-in allows you to configure read-only Universal Disk Format (UDF) files and read-only tables. This plug-in also allows you to use a cluster endpoint to route requests to read-only nodes in the cluster to access read-only UDF files and read-only tables.
  • The polar_resource_group plug-in is added to customize resource groups. You can isolate resources such as CPU and memory on a per-user, per-database, or per-session basis.
Performance optimization
  • The compute nodes of databases are decoupled from file systems so that you can independently perform operations and maintenance (O&M) on file systems. This improves the reliability and availability of databases.
  • The snapshot of the active transaction list is replaced with a commit sequence number (CSN). Each CSN is a monotonically increasing identifier. This improves the transaction processing performance of databases.
  • The execution plan is optimized to avoid the use of obsolete statistics.
Fixed issues
  • A database process failure occurs when the TimescaleDB plug-in fails to request memory.
  • The input/output (I/O) monitoring feature does not provide data statistics after a process exits.
  • A null pointer exception may occur after lock_debug is enabled.
  • The pg_cron plug-in becomes unavailable in specific cases.
  • The known issue of distributed shared memory (DSM) deadlock in PostgreSQL Community Edition.
  • The number of connections to a PolarDB-O database exceeds the upper limit.

V1.1.0

Feature Description
Built-in views The polar_stat_activity view is optimized, and the wait_info and wait_time columns are added. The wait_info column displays the object for which the current process is waiting, and the wait_time column displays the amount of time that the process needs to wait. If the object is a process, the process identifier (PID) is displayed. If the object is a file, the file descriptor (FD) is displayed.
Plug-ins
  • The polar_concurrency_control plug-in is added to set a concurrency limit on transaction executions, SQL queries, stored procedures, and DML operations. You can customize large queries and set a concurrency limit on large queries to improve the execution efficiency in high concurrency scenarios.
  • The oss_fdw plug-in is added to support external tables of Alibaba Cloud OSS. You can use OSS external tables to write data of PolarDB-O databases to OSS, or load data from OSS to PolarDB-O databases. You can use multiple external tables in parallel or compress data during imports and exports. This improves the efficiency of data import and export. You can also use this feature to separate hot data and cold data that are stored in a wide range of storage media. For more information, see Read and write external data files by using oss_fdw.
Performance optimization The pre-extension feature is added. This feature automatically adds additional index pages when index pages are insufficient for new indexes. This improves the execution efficiency when data is inserted into an table with indexes.
Ganos 2.7
  • MD5 functions are added for spatial raster objects. You can invoke these functions to check data consistency and remove duplicates.
    • The ST_MD5Sum function is added to obtain the MD5 hash value of a raster object. For more information, see ST_MD5Sum.
    • The ST_SetMD5Sum function is added to set the MD5 hash value of a raster object. For more information, see ST_SetMD5Sum.
  • OSS authentication functions are added for spatial raster objects:
    • The ST_AKId function is added to obtain the AccessKey ID of a raster object stored in OSS. For more information, see ST_AKId.
    • The ST_SetAccessKey function is added to set the AccessKey ID and the AccessKey secret of a raster object stored in OSS. For more information, see ST_SetAccessKey.
    • The ST_SetAKId function is added to set the AccessKey ID of a raster object stored in OSS. For more information, see ST_SetAKId.
    • The ST_SetAKSecret function is added to set the AccessKey secret of a raster object stored in OSS. For more information, see ST_SetAKSecret.
  • Metadata functions are added for spatial rasters:
    • The ST_ScaleX function is added to obtain the pixel width of a raster object on the X-axis of the spatial reference system. For more information, see ST_ScaleX.
    • The ST_ScaleY function is added to obtain the pixel width of a raster object on the Y-axis of the spatial reference system. For more information, see ST_ScaleY.
    • The ST_SetScale function is added to set the pixel width of a raster object in the spatial reference system. For more information, see ST_ScaleY.
    • The ST_SkewX function is added to obtain the skew of a raster object on the X-axis of the spatial reference system. For more information, see ST_SkewX.
    • The ST_SkewY function is added to obtain the skew of a raster object on the Y-axis of the spatial reference system. For more information, see ST_SkewY.
    • The ST_SetSkew function is added to set the skew of a raster object in the spatial reference system. For more information, see ST_SetSkew.
    • The ST_UpperLeftX function is added to obtain the upper-left X-coordinate of a raster object in the spatial reference system. For more information, see ST_UpperLeftX.
    • The ST_UpperLeftY function is added to obtain the upper-left Y-coordinate of a raster object in the spatial reference system. For more information, see ST_UpperLeftY.
    • The ST_SetUpperLeft function is added to set the upper-left coordinates of a raster object in the spatial reference system. For more information, see ST_SetUpperLeft.
    • The ST_PixelWidth function is added to obtain the pixel width of a raster object in the spatial reference system. For more information, see ST_PixelWidth.
    • The ST_PixelHeight function is added to obtain the pixel height of a raster object in the spatial reference system. For more information, see ST_PixelHeight.
  • The issue of extension upgrade failures caused by aggregate functions is fixed.