PostgreSQL on Amazon RDS - Amazon Relational Database Service

PostgreSQL on Amazon RDS

Amazon RDS supports DB instances running several versions of PostgreSQL. You can create DB instances and DB snapshots, point-in-time restores and backups. DB instances running PostgreSQL support Multi-AZ deployments, read replicas, Provisioned IOPS, and can be created inside a VPC. You can also use Secure Socket Layer (SSL) to connect to a DB instance running PostgreSQL.

Before creating a DB instance, you should complete the steps in the Setting up for Amazon RDS section of this guide.

You can use any standard SQL client application to run commands for the instance from your client computer. Such applications include pgAdmin, a popular Open Source administration and development tool for PostgreSQL, or psql, a command line utility that is part of a PostgreSQL installation. To deliver a managed service experience, Amazon RDS doesn't provide host access to DB instances, and it restricts access to certain system procedures and tables that require advanced privileges. Amazon RDS supports access to databases on a DB instance using any standard SQL client application. Amazon RDS doesn't allow direct host access to a DB instance by using Telnet or Secure Shell (SSH).

Amazon RDS for PostgreSQL is compliant with many industry standards. For example, you can use Amazon RDS for PostgreSQL databases to build HIPAA-compliant applications and to store healthcare-related information, including protected health information (PHI) under a completed Business Associate Agreement (BAA) with AWS. Amazon RDS for PostgreSQL also meets Federal Risk and Authorization Management Program (FedRAMP) security requirements. Amazon RDS for PostgreSQL has received a FedRAMP Joint Authorization Board (JAB) Provisional Authority to Operate (P-ATO) at the FedRAMP HIGH Baseline within the AWS GovCloud (US) Regions. For more information on supported compliance standards, see AWS cloud compliance.

To import PostgreSQL data into a DB instance, follow the information in the Importing data into PostgreSQL on Amazon RDS section.

Common management tasks for PostgreSQL on Amazon RDS

The following are the common management tasks you perform with an Amazon RDS for PostgreSQL DB instance, with links to relevant documentation for each task.

Task area Relevant documentation

Setting up Amazon RDS for first-time use

There are prerequisites you must complete before you create your DB instance. For example, DB instances are created by default with a firewall that prevents access to it. You therefore must create a security group with the correct IP addresses and network configuration to access the DB instance.

Setting up for Amazon RDS

Understanding Amazon RDS DB instances

If you are creating a DB instance for production purposes, you should understand how instance classes, storage types, and Provisioned IOPS work in Amazon RDS.

DB instance classes

Amazon RDS storage types

Provisioned IOPS SSD storage

Finding supported PostgreSQL versions

Amazon RDS supports several versions of PostgreSQL.

Supported PostgreSQL database versions

Setting up high availability and failover support

A production DB instance should use Multi-AZ deployments. Multi-AZ deployments provide increased availability, data durability, and fault tolerance for DB instances.

High availability (Multi-AZ) for Amazon RDS

Understanding the Amazon Virtual Private Cloud (VPC) network

If your AWS account has a default VPC, then your DB instance is automatically created inside the default VPC. In some cases, your account might not have a default VPC, and you might want the DB instance in a VPC. In these cases, create the VPC and subnet groups before you create the DB instance.

Determining whether you are using the EC2-VPC or EC2-Classic platform

Working with a DB instance in a VPC

Importing data into Amazon RDS PostgreSQL

You can use several different tools to import data into your PostgreSQL DB instance on Amazon RDS.

Importing data into PostgreSQL on Amazon RDS

Setting up read-only read replicas (primary and standbys)

PostgreSQL on Amazon RDS supports read replicas in both the same AWS Region and in a different AWS Region from the primary instance.

Working with read replicas

Working with PostgreSQL read replicas in Amazon RDS

Creating a read replica in a different AWS Region

Understanding security groups

By default, DB instances are created with a firewall that prevents access to them. You therefore must create a security group with the correct IP addresses and network configuration to access the DB instance.

In general, if your DB instance is on the EC2-Classic platform, you need to create a DB security group. If your DB instance is on the EC2-VPC platform, you need to create a VPC security group.

Determining whether you are using the EC2-VPC or EC2-Classic platform

Controlling access with security groups

Setting up parameter groups and features

If your DB instance is going to require specific database parameters, you should create a parameter group before you create the DB instance.

Working with DB parameter groups

Performing common DBA tasks for PostgreSQL

Some of the more common tasks for PostgreSQL DBAs include:

Common DBA tasks for PostgreSQL

Connecting to your PostgreSQL DB instance

After creating a security group and associating it to a DB instance, you can connect to the DB instance using any standard SQL client application such as pgadmin III.

Connecting to a DB instance running the PostgreSQL database engine

Using SSL with a PostgreSQL DB instance

Backing up and restoring your DB instance

You can configure your DB instance to take automated backups, or take manual snapshots, and then restore instances from the backups or snapshots.

Backing up and restoring an Amazon RDS DB instance

Monitoring the activity and performance of your DB instance

You can monitor a PostgreSQL DB instance by using CloudWatch Amazon RDS metrics, events, and enhanced monitoring.

Viewing DB instance metrics

Viewing Amazon RDS events

Upgrading the PostgreSQL database version

You can do both major and minor version upgrades for your PostgreSQL DB instance.

Upgrading the PostgreSQL DB engine for Amazon RDS

Choosing a major version upgrade for PostgreSQL

Working with log files

You can access the log files for your PostgreSQL DB instance.

PostgreSQL database log files

Understanding the best practices for PostgreSQL DB instances

Find some of the best practices for working with PostgreSQL on Amazon RDS.

Best practices for working with PostgreSQL

Working with the database preview environment

When you create a DB instance in Amazon RDS, you know that the PostgreSQL version it's based on has been tested and is fully supported by Amazon. The PostgreSQL community releases new versions and new extensions continuously. You can try out new PostgreSQL versions and extensions before they are fully supported. To do that, you can create a new DB instance in the Database Preview Environment.

DB instances in the Database Preview Environment are similar to DB instances in a production environment. However, keep in mind several important factors:

  • All DB instances are deleted 60 days after you create them, along with any backups and snapshots.

  • You can only create a DB instance in a virtual private cloud (VPC) based on the Amazon VPC service.

  • You can only create M6g, M5, T3, R6g, and R5 instance types. For more information about RDS instance classes, see DB instance classes.

  • You can only use General Purpose SSD and Provisioned IOPS SSD storage.

  • You can't get help from AWS Support with DB instances. You can post your questions in the RDS database preview environment forum.

  • You can't copy a snapshot of a DB instance to a production environment.

  • You can use both single-AZ and multi-AZ deployments.

  • You can use standard PostgreSQL dump and load functions to export databases from or import databases to the Database Preview Environment.

Features not supported in the preview environment

The following features are not available in the preview environment:

  • Cross-region snapshot copy

  • Cross-region read replicas

  • Extensions not in the following table of supported extensions

PostgreSQL extensions supported in the preview environment

The PostgreSQL extensions supported in the Database Preview Environment are listed in the following table.

Extension Version

amcheck

1.2

aws_commons 1.0
aws_s3 1.0

bloom

1.0

btree_gin

1.3

btree_gist

1.5

citext

1.6

cube

1.4

dblink

1.2

dict_int

1.0

dict_xsyn

1.0

earthdistance

1.1

fuzzystrmatch

1.1

hstore

1.7

hstore_plper

1.0

intagg

1.1

intarray

1.3

ip4r 2.4

isn

1.2

jsonb_plperl 1.0

ltree

1.2

pageinspect 1.8

pg_buffercache

1.3

pg_freespacemap

1.2

pg_prewarm

1.2

pg_similarity 1.0

pg_stat_statements

1.8

pg_transport 1.0

pg_trgm

1.5

pg_visibility

1.2

pgcrypto

1.3

pgrouting 3.0.0

pgrowlocks

1.2

pgstattuple

1.5

pgtap 1.1.0

plperl

1.0

plpgsql

1.0

plprofiler 4.1

pltcl

1.0

postgres_fdw

1.0

prefix 1.2.0

sslinfo

1.2

tablefunc

1.0

test_parser

1.0

tsm_system_rows

1.0

tsm_system_time

1.0

unaccent

1.1

uuid_ossp

1.1

Creating a new DB instance in the preview environment

Use the following procedure to create a DB instance in the preview environment.

To create a DB instance in the preview environment

  1. Sign in to the AWS Management Console and open the Amazon RDS console at https://console.aws.amazon.com/rds/.

  2. Choose Dashboard from the navigation pane.

  3. Choose Switch to database preview environment.

    
                            Dialog box to select the preview environment

    You also can navigate directly to the Database preview environment.

    Note

    If you want to create an instance in the Database Preview Environment with the API or CLI, the endpoint is rds-preview.us-east-2.amazonaws.com.

  4. Continue with the procedure as described in Console.

Limitations for PostgreSQL DB instances

The following is a list of limitations for PostgreSQL on Amazon RDS:

  • You can have up to 40 PostgreSQL DB instances.

  • For storage limits, see Amazon RDS DB instance storage.

  • Amazon RDS reserves up to 3 connections for system maintenance. If you specify a value for the user connections parameter, you need to add 3 to the number of connections that you expect to use.

Supported PostgreSQL database versions

Amazon RDS supports DB instances running several editions of PostgreSQL. You can specify any currently supported PostgreSQL version when creating a new DB instance. You can specify the major version (such as PostgreSQL 10), and any supported minor version for the specified major version. If no version is specified, Amazon RDS defaults to a supported version, typically the most recent version. If a major version is specified but a minor version is not, Amazon RDS defaults to a recent release of the major version you have specified.

To see a list of supported versions, as well as defaults for newly created DB instances, use the describe-db-engine-versions AWS CLI command. For example, to display the default PostgreSQL engine version, use the following command:

aws rds describe-db-engine-versions --default-only --engine postgres

PostgreSQL 13 versions

PostgreSQL version 13.3 on Amazon RDS

PostgreSQL version 13.3 is now available on Amazon RDS. PostgreSQL contains several improvements that were announced in PostgreSQL 13.3.

This version also includes the following changes:

For information on all extensions, see PostgreSQL version 13 extensions supported on Amazon RDS.

PostgreSQL version 13.2 on Amazon RDS

PostgreSQL version 13.2 is now available on Amazon RDS. PostgreSQL contains several improvements that were announced in PostgreSQL 13.2.

This version also added the following new extensions:

For information on all extensions, see PostgreSQL version 13 extensions supported on Amazon RDS.

PostgreSQL version 13.1 on Amazon RDS

PostgreSQL version 13.1 is now available on Amazon RDS. PostgreSQL contains several improvements that were announced in PostgreSQL 13.0 and PostgreSQL 13.1.

This version added:

For information on all extensions, see PostgreSQL version 13 extensions supported on Amazon RDS.

PostgreSQL 12 versions

PostgreSQL version 12.7 on Amazon RDS

PostgreSQL version 12.7 is now available on Amazon RDS. PostgreSQL version 12.7 contains several improvements that were announced for PostgreSQL release 12.7.

This version also includes the following changes:

For information on all extensions, see PostgreSQL version 12 extensions supported on Amazon RDS.

PostgreSQL version 12.6 on Amazon RDS

PostgreSQL version 12.6 is now available on Amazon RDS. PostgreSQL version 12.6 contains several improvements that were announced for PostgreSQL release 12.6.

This version also includes the following changes:

For information on all extensions, see PostgreSQL version 12 extensions supported on Amazon RDS.

PostgreSQL version 12.5 on Amazon RDS

PostgreSQL version 12.5 is now available on Amazon RDS. PostgreSQL version 12.5 contains several improvements that were announced for PostgreSQL release 12.5.

This version also includes the following changes:

For information on all extensions, see PostgreSQL version 12 extensions supported on Amazon RDS.

PostgreSQL version 12.4 on Amazon RDS

PostgreSQL version 12.4 is now available on Amazon RDS. PostgreSQL version 12.4 contains several improvements that were announced for PostgreSQL release 12.4.

This version also includes the following changes:

  • Added the pg_proctab extension version 0.0.9

  • Added the rdkit extension version 3.8

  • Upgraded the aws_s3 extension to version 1.1.

  • Upgraded the pglogical extension to version 2.3.2

  • Upgraded the wal2json extension to version 2.3

For information on all extensions, see PostgreSQL version 12 extensions supported on Amazon RDS.

PostgreSQL version 12.3 on Amazon RDS

PostgreSQL version 12.3 is now available on Amazon RDS. PostgreSQL version 12.3 contains several improvements that were announced for PostgreSQL release 12.3.

This version also includes the following changes:

  • Upgraded the pg_hint_plan extension to version 1.3.5.

  • Upgraded the pglogical extension to version 2.3.1.

For information on all extensions, see PostgreSQL version 12 extensions supported on Amazon RDS.

PostgreSQL version 12.2 on Amazon RDS

PostgreSQL version 12.2 is now available on Amazon RDS. PostgreSQL version 12.2 contains several improvements that were announced for PostgreSQL releases 12.0, 12.1, and 12.2.

For information on all extensions, see PostgreSQL version 12 extensions supported on Amazon RDS.

PostgreSQL 11 versions

PostgreSQL version 11.12 on Amazon RDS

PostgreSQL version 11.12 is now available on Amazon RDS. PostgreSQL version 11.12 contains several improvements that were announced for PostgreSQL release 11.12.

This version also includes the following change:

  • The orafce extension is updated to version 3.15.

For information on all extensions, see PostgreSQL version 11.x extensions supported on Amazon RDS.

PostgreSQL version 11.11 on Amazon RDS

PostgreSQL version 11.11 is now available on Amazon RDS. PostgreSQL version 11.11 contains several improvements that were announced for PostgreSQL release 11.11.

This version also added the following new extension:

  • The pg_bigm extension version 1.2.

For information on all extensions, see PostgreSQL version 11.x extensions supported on Amazon RDS.

PostgreSQL version 11.10 on Amazon RDS

PostgreSQL version 11.10 is now available on Amazon RDS. PostgreSQL version 11.10 contains several improvements that were announced for PostgreSQL release 11.10.

For information on all extensions, see PostgreSQL version 11.x extensions supported on Amazon RDS.

PostgreSQL version 11.9 on Amazon RDS

PostgreSQL version 11.9 is now available on Amazon RDS. PostgreSQL version 11.9 contains several improvements that were announced for PostgreSQL release 11.9.

This version also includes the following changes:

  • Added the aws_s3 extension version 1.1

  • Added the pg_proctab extension version 0.0.9

  • Upgraded the pgaudit extension to version 1.3.1.

  • Upgraded the pglogical extension to version 2.2.2

  • Added the rdkit extension version 3.8

For information on all extensions, see PostgreSQL version 11.x extensions supported on Amazon RDS.

PostgreSQL version 11.8 on Amazon RDS

PostgreSQL version 11.8 contains several bug fixes for issues in release 11.7. For more information on the fixes in PostgreSQL 11.8, see the PostgreSQL 11.8 documentation.

This version also includes the following change:

  • Upgraded the pg_hint_plan extension to version 1.3.5.

For information on all extensions, see PostgreSQL version 11.x extensions supported on Amazon RDS.

PostgreSQL version 11.7 on Amazon RDS

PostgreSQL version 11.7 contains several bug fixes for issues in release 11.6. For more information on the fixes in PostgreSQL 11.7, see the PostgreSQL 11.7 documentation.

PostgreSQL version 11.6 on Amazon RDS

PostgreSQL version 11.6 contains several bug fixes for issues in release 11.5. For more information on the fixes in PostgreSQL 11.6, see the PostgreSQL documentation.

This version also includes the following changes:

  • Upgraded the pgTAP extension to version 1.1.0.

  • Added the plprofiler extension.

  • Added to shared_preload_libraries support for pg_prewarm to start automatically.

PostgreSQL version 11.5 on Amazon RDS

PostgreSQL version 11.5 contains several bug fixes for issues in release 11.4. For more information on the fixes in PostgreSQL 11.5, see the PostgreSQL documentation.

This version also includes the following changes:

PostgreSQL version 11.4 on Amazon RDS

This release contains an important security fix and also bug fixes and improvements done by the PostgreSQL community. For more information on the security fix, see the PostgreSQL community announcement and the security fix CVE-2019-10164.

With this release, the pg_hint_plan extension has been updated to version 1.3.4.

For more information on the fixes in PostgreSQL 11.4, see the PostgreSQL documentation.

PostgreSQL version 11.2 on Amazon RDS

PostgreSQL version 11.2 contains several bug fixes for issues in release 11.1. For more information on the fixes in PostgreSQL 11.2, see the PostgreSQL documentation.

This version also includes the following changes:

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 11.1 on Amazon RDS

PostgreSQL version 11.1 contains several improvements that were announced in PostgreSQL 11.1 released! This version includes SQL stored procedures that enable embedded transactions within a procedure. This version also includes major improvements to partitioning and parallelism and many useful performance improvements. For example, by using a non-null constant for a column default, you can now use an ALTER TABLE command to add a column without causing a table rewrite.

PostgreSQL version 11.1 contains several bug fixes for issues in release 11. For complete details, see the PostgreSQL release 11.1 documentation. Some changes in this version include the following:

  • Partitioning – Partitioning improvements include support for hash partitioning, enabling creation of a default partition, and dynamic row movement to another partition based on the key column update.

  • Performance – Performance improvements include parallelism while creating indexes, materialized views, hash joins, and sequential scans to make the operations perform better.

  • Stored procedures – SQL stored procedures now added support embedded transactions.

  • Support for Just-In-Time (JIT) capability – RDS for PostgreSQL 11 instances are created with JIT capability, speeding evaluation of expressions. To enable JIT capability, set the jit parameter to 1 in the PostgreSQL parameter group for the database.

  • Segment size – The write-ahead logging (WAL) segment size has been changed from 16 MB to 64 MB.

  • Autovacuum improvements – To provide valuable logging, the parameter rds.force_autovacuum_logging is ON by default in conjunction with the log_autovacuum_min_duration parameter set to 10 seconds. To increase autovacuum effectiveness, the values for the autovacuum_max_workers and autovacuum_vacuum_cost_limit parameters are computed based on host memory capacity to provide larger default values.

  • Improved transaction timeout – The parameter idle_in_transaction_session_timeout is set to 24 hours. Any session that has been idle more than 24 hours is terminated.

  • Performance metrics – The pg_stat_statements extension is included in shared_preload_libraries by default. This avoids having to reboot the instance immediately after creation. However, this functionality still requires you to run the statement CREATE EXTENSION pg_stat_statements;. Also, track_io_timing is enabled by default to add more granular data to pg_stat_statements.

  • The tsearch2 extension is no longer supported – If your application uses tsearch2 functions, update it to use the equivalent functions provided by the core PostgreSQL engine. For more information about the tsearch2 extension, see PostgreSQL tsearch2.

  • The chkpass extension is no longer supported – For more information about the chkpass extension, see PostgreSQL chkpass.

  • Extension updates for RDS for PostgreSQL 11.1 include the following:

    • pgaudit is updated to 1.3.0.

    • pg_hint_plan is updated to 1.3.2.

    • pglogical is updated to 2.2.1.

    • plcoffee is updated to 2.3.8.

    • plv8 is updated to 2.3.8.

    • PostGIS is updated to 2.5.1.

    • prefix is updated to 1.2.8.

    • wal2json is updated to hash 9e962bad.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL 10 versions

PostgreSQL version 10.17 on Amazon RDS

PostgreSQL version 10.17 is now available on Amazon RDS. PostgreSQL version 10.17 contains several improvements that were announced for PostgreSQL release 10.17.

This version also includes the following change:

  • The orafce extension is updated to version 3.15.

For information on all extensions, see PostgreSQL version 10.x extensions supported on Amazon RDS.

PostgreSQL version 10.16 on Amazon RDS

PostgreSQL version 10.16 is now available on Amazon RDS. PostgreSQL version 10.16 contains several improvements that were announced for PostgreSQL release 10.16.

For information on all extensions, see PostgreSQL version 10.x extensions supported on Amazon RDS.

PostgreSQL version 10.15 on Amazon RDS

PostgreSQL version 10.15 is now available on Amazon RDS. PostgreSQL version 10.15 contains several improvements that were announced for PostgreSQL release 10.15.

For information on all extensions, see PostgreSQL version 10.x extensions supported on Amazon RDS.

PostgreSQL version 10.14 on Amazon RDS

PostgreSQL version 10.14 is now available on Amazon RDS. PostgreSQL version 10.14 contains several improvements that were announced for PostgreSQL release 10.14.

This version also includes the following changes:

For information on all extensions, see PostgreSQL version 10.x extensions supported on Amazon RDS.

PostgreSQL version 10.13 on Amazon RDS

PostgreSQL version 10.13 contains several bug fixes for issues in release 10.12. For more information on the fixes in PostgreSQL 10.13, see the PostgreSQL 10.13 documentation.

This version also includes the following change:

  • Upgraded the pg_hint_plan extension to version 1.3.5.

For information on all extensions, see PostgreSQL version 10.x extensions supported on Amazon RDS.

PostgreSQL version 10.12 on Amazon RDS

PostgreSQL version 10.12 contains several bug fixes for issues in release 10.11. For more information on the fixes in PostgreSQL 10.12, see the PostgreSQL 10.12 documentation.

PostgreSQL version 10.11 on Amazon RDS

PostgreSQL version 10.11 contains several bug fixes for issues in release 10.10. For more information on the fixes in PostgreSQL 10.11, see the PostgreSQL documentation. Changes in this version include the following:

  • Added the plprofiler extension.

PostgreSQL version 10.10 on Amazon RDS

PostgreSQL version 10.10 contains several bug fixes for issues in release 10.9. For more information on the fixes in PostgreSQL 10.10, see the PostgreSQL documentation. Changes in this version include the following:

PostgreSQL version 10.9 on Amazon RDS

This release contains an important security fix and also bug fixes and improvements done by the PostgreSQL community. For more information on the security fix, see the PostgreSQL community announcement and security fix CVE-2019-10164.

With this release, the pg_hint_plan extension has been updated to version 1.3.3.

For more information on the fixes in PostgreSQL 10.9, see the PostgreSQL documentation.

PostgreSQL version 10.7 on Amazon RDS

PostgreSQL version 10.7 contains several bug fixes for issues in release 10.6. For more information on the fixes in 10.7, see the PostgreSQL documentation.

This version also includes the following changes:

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL version 10.6 on Amazon RDS

PostgreSQL version 10.6 contains several bug fixes for issues in release 10.5. For more information on the fixes in PostgreSQL 10.6, see the PostgreSQL documentation.

This version also includes the following changes:

  • A new rds.restrict_password_commands parameter and a new rds_password role have been introduced. When the rds.restrict_password_commands parameter is enabled, only users who have the rds_password role can make user password and password expiration changes. By restricting password-related operations to a limited set of roles, you can implement policies such as password complexity requirements from the client side. The rds.restrict_password_commands parameter is static, so it requires a database restart to change it. For more information, see Restricting password management.

  • The logical decoding plugin wal2json has been updated to commit 9e962ba.

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

Note

Amazon RDS for PostgreSQL has announced the removal of the tsearch2 extension in the next major release. We encourage customers still using pre-8.3 text search to migrate to the equivalent built-in features. For more information about migrating, see the PostgreSQL documentation.

PostgreSQL version 10.5 on Amazon RDS

PostgreSQL version 10.5 contains several bug fixes for issues in release 10.4. For more information on the fixes in 10.5, see the PostgreSQL documentation.

This version also includes the following changes:

  • Support for the pglogical extension version 2.2.0. Prerequisites for using this extension are the same as the prerequisites for using logical replication for PostgreSQL as described in Logical replication for PostgreSQL on Amazon RDS.

  • Support for the pg_similarity extension version 1.0.

  • Support for the pageinspect extension version 1.6.

  • Support for the libprotobuf extension version 1.3.0 for the PostGIS component.

  • An update for the pg_hint_plan extension to version 1.3.1.

  • An update for the wal2json extension to version 01c5c1e.

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 10.4 on Amazon RDS

PostgreSQL version 10.4 contains several bug fixes for issues in release 10.3. For more information on the fixes in 10.4, see the PostgreSQL documentation.

This version also includes the following changes:

  • Support for PostgreSQL 10 Logical Replication using the native publication and subscription framework. RDS for PostgreSQL databases can function as both publishers and subscribers. You can specify replication to other PostgreSQL databases at the database-level or at the table-level. With logical replication, the publisher and subscriber databases need not be physically identical (block-to-block) to each other. This allows for use cases such as data consolidation, data distribution, and data replication across different database versions for 10.4 and above. For more details, refer to Logical replication for PostgreSQL on Amazon RDS.

  • The temporary file size limitation is user-configurable. You require the rds_superuser role to modify the temp_file_limit parameter.

  • Update of the GDAL library, which is used by the PostGIS extension. See Working with the PostGIS extension.

  • Update of the ip4r extension to version 2.1.1.

  • Update of the pg_repack extension to version 1.4.3. See Working with the pg_repack extension.

  • Update of the plv8 extension to version 2.1.2.

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

Note

The tsearch2 extension is to be removed in the next major release. We encourage customers still using pre-8.3 text search to migrate to the equivalent built-in features. For more information about migrating, see the PostgreSQL documentation.

PostgreSQL version 10.3 on Amazon RDS

PostgreSQL version 10.3 contains several bug fixes for issues in release 10. For more information on the fixes in 10.3, see the PostgreSQL documentation.

Version 2.1.0 of plv8 is now available. If you use plv8 and upgrade PostgreSQL to a new plv8 version, you immediately take advantage of the new extension but the catalog metadata doesn't reflect this fact. For the steps to synchronize your catalog metadata with the new version of plv8, see Upgrading plv8.

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 10.1 on Amazon RDS

PostgreSQL version 10.1 contains several bug fixes for issues in release 10. For more information on the fixes in 10.1, see the PostgreSQL documentation and the PostgreSQL 10 community announcement.

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL version 10.1 includes the following changes:

  • Declarative table partitioning – PostgreSQL 10 adds table partitioning to SQL syntax and native tuple routing.

  • Parallel queries – When you create a new PostgreSQL 10.1 instance, parallel queries are enabled for the default.postgres10 parameter group. The parameter max_parallel_workers_per_gather is set to 2 by default, but you can modify it to support your specific workload requirements.

  • Support for the international components for unicode (ICU) – You can use the ICU library to provide explicitly versioned collations. Amazon RDS for PostgreSQL 10.1 is compiled with ICU version 60.2. For more information about ICU implementation in PostgreSQL, see Collation support.

  • Huge pages – Huge pages is a feature of the Linux kernel that uses multiple page size capabilities of modern hardware architectures. Amazon RDS for PostgreSQL supports huge pages with a global configuration parameter. When you create a new PostgreSQL 10.1 instance with RDS, the huge_pages parameter is set to "on" for the default.postgres10 parameter group. You can modify this setting to support your specific workload requirements.

  • Extension plv8 update – plv8 is a procedural language that you can use to write functions in JavaScript that you can then call from SQL. This release of PostgreSQL supports version 2.1.0 of plv8.

  • Renaming of xlog and location – In PostgreSQL version 10 the abbreviation "xlog" has changed to "wal", and the term "location" has changed to "lsn". For more information, see https://www.postgresql.org/docs/10/static/release-10.html#id-1.11.6.8.4.

  • tsearch2 extension – Amazon RDS continues to provide the tsearch2 extension in PostgreSQL version 10, but is to remove it in the next major version release. If your application uses tsearch2 functions update it to use the equivalent functions the core engine provides. For more information see tsearch2 in the PostgreSQL documentation.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL 9.6 versions

PostgreSQL version 9.6.22 on Amazon RDS

PostgreSQL version 9.6.22 is now available on Amazon RDS. PostgreSQL version 9.6.22 contains several improvements that were announced for PostgreSQL release 9.6.22.

This version also includes the following change:

  • The orafce extension is updated to version 3.15.

For information on all extensions, see PostgreSQL version 9.6.x extensions supported on Amazon RDS.

PostgreSQL version 9.6.21 on Amazon RDS

PostgreSQL version 9.6.21 is now available on Amazon RDS. PostgreSQL version 9.6.21 contains several improvements that were announced for PostgreSQL release 9.6.21.

For information on all extensions, see PostgreSQL version 9.6.x extensions supported on Amazon RDS.

PostgreSQL version 9.6.20 on Amazon RDS

PostgreSQL version 9.6.20 is now available on Amazon RDS. PostgreSQL version 9.6.20 contains several improvements that were announced for PostgreSQL release 9.6.20.

For information on all extensions, see PostgreSQL version 9.6.x extensions supported on Amazon RDS.

PostgreSQL version 9.6.19 on Amazon RDS

PostgreSQL version 9.6.19 is now available on Amazon RDS. PostgreSQL version 9.6.19 contains several improvements that were announced for PostgreSQL release 9.6.19.

This version also includes the following changes:

  • Upgraded the pgaudit extension to version 1.1.2

  • Upgraded the pglogical extension to version 2.2.2

  • Upgraded the wal2json extension to version 2.3

For information on all extensions, see PostgreSQL version 9.6.x extensions supported on Amazon RDS.

PostgreSQL version 9.6.18 on Amazon RDS

PostgreSQL version 9.6.18 contains several bug fixes for issues in release 9.6.17. For more information on the fixes in PostgreSQL 9.6.18, see the PostgreSQL 9.6.18 documentation.

This version also includes the following change:

  • Upgraded the pg_hint_plan extension to version 1.2.6.

For information on all extensions, see PostgreSQL version 9.6.x extensions supported on Amazon RDS.

PostgreSQL version 9.6.17 on Amazon RDS

PostgreSQL version 9.6.17 contains several bug fixes for issues in release 9.6.16. For more information on the fixes in PostgreSQL 9.6.17, see the PostgreSQL 9.6.17 documentation.

PostgreSQL version 9.6.16 on Amazon RDS

PostgreSQL version 9.6.16 contains several bug fixes for issues in release 9.6.15. For more information on the fixes in PostgreSQL 9.6.16, see the PostgreSQL documentation.

PostgreSQL version 9.6.15 on Amazon RDS

PostgreSQL version 9.6.15 contains several bug fixes for issues in release 9.6.14. For more information on the fixes in PostgreSQL 9.6.15, see the PostgreSQL documentation.

The PostGIS extension is updated to version 2.5.2.

PostgreSQL version 9.6.14 on Amazon RDS

This release contains bug fixes and improvements done by the PostgreSQL community.

With this release, the pg_hint_plan extension has been updated to version 1.2.5.

For more information on the fixes in PostgreSQL 9.6.14, see the PostgreSQL documentation.

PostgreSQL version 9.6.12 on Amazon RDS

PostgreSQL version 9.6.12 contains several bug fixes for issues in release 9.6.11. For more information on the fixes in 9.6.12, see the PostgreSQL documentation.

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL version 9.6.11 on Amazon RDS

PostgreSQL version 9.6.11 contains several bug fixes for issues in release 9.6.10. For more information on the fixes in PostgreSQL 9.6.11, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

With this version, the logical decoding plugin wal2json has been updated to commit 9e962ba.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.6.10 on Amazon RDS

PostgreSQL version 9.6.10 contains several bug fixes for issues in release 9.6.9. For more information on the fixes in 9.6.10, see the PostgreSQL documentation.

This version includes the following changes:

  • Support for the pglogical extension version 2.2.0. Prerequisites for using this extension are the same as the prerequisites for using logical replication for PostgreSQL as described in Logical replication for PostgreSQL on Amazon RDS.

  • Support for the pg_similarity extension version 2.2.0.

  • An update for the wal2json extension to version 01c5c1e.

  • An update for the pg_hint_plan extension to version 1.2.3.

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.6.9 on Amazon RDS

PostgreSQL version 9.6.9 contains several bug fixes for issues in release 9.6.8. For more information on the fixes in 9.6.9, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

This version includes the following changes:

  • The temporary file size limitation is user-configurable. You require the rds_superuser role to modify the temp_file_limit parameter.

  • Update of the GDAL library, which is used by the PostGIS extension. See Working with the PostGIS extension.

  • Update of the ip4r extension to version 2.1.1.

  • Update of the pgaudit extension to version 1.1.1. See Working with the pgaudit extension.

    Update of the pg_repack extension to version 1.4.3. See Working with the pg_repack extension.

  • Update of the plv8 extension to version 2.1.2.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.6.8 on Amazon RDS

PostgreSQL version 9.6.8 contains several bug fixes for issues in release 9.6.6. For more information on the fixes in 9.6.8, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.6.6 on Amazon RDS

PostgreSQL version 9.6.6 contains several bug fixes for issues in release 9.6.5. For more information on the fixes in 9.6.6, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

This version includes the following features:

  • Supports the orafce extension, version 3.6.1. This extension contains functions that are native to commercial databases, and can be helpful if you are porting a commercial database to PostgreSQL. For more information about using orafce with Amazon RDS, see Working with the orafce extension.

  • Supports the prefix extension, version 1.2.6. This extension provides an operator for text prefix searches. For more information about prefix, see the prefix project on GitHub.

  • Supports version 2.3.4 of PostGIS, version 2.4.2 of pgrouting, and an updated version of wal2json.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.6.5 on Amazon RDS

PostgreSQL version 9.6.5 contains several bug fixes for issues in release 9.6.4. For more information on the fixes in 9.6.5, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

This version also includes support for the pgrouting, postgresql-hll extensions, and the decoder_raw optional extension.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.6.3 on Amazon RDS

PostgreSQL version 9.6.3 contains several new features and bug fixes. This version includes the following features:

  • Supports the extension pg_repack version 1.4.0. You can use this extension to remove bloat from tables and indexes. For more information on using pg_repack with Amazon RDS, see Working with the pg_repack extension.

  • Supports the extension pgaudit version 1.1.0. This extension provides detailed session and object audit logging. For more information on using pgaudit with Amazon RDS, see Working with the pgaudit extension.

  • Supports wal2json, an output plugin for logical decoding.

  • Supports the auto_explain extension. You can use this extension to log execution plans of slow statements automatically. The following example shows how to use auto_explain from within an Amazon RDS PostgreSQL session:

    LOAD '$libdir/plugins/auto_explain';

    For more information on using auto_explain, see the PostgreSQL documentation.

PostgreSQL version 9.6.2 on Amazon RDS

PostgreSQL version 9.6.2 contains several new features and bug fixes. The new version also includes the following extension versions:

  • PostGIS version 2.3.2

  • pg_freespacemap version 1.1–Provides a way to examine the free space map (FSM). This extension provides an overloaded function called pg_freespace. The functions show the value recorded in the free space map for a given page, or for all pages in the relation.

  • pg_hint_plan version 1.1.3– Provides control of execution plans by using hinting phrases at the beginning of SQL statements.

  • log_fdw version 1.0–Using this extension from Amazon RDS, you can load and query your database engine log from within the database. For more information, see Using the log_fdw extension.

  • With this version release, you can now edit the max_worker_processes parameter in a DB parameter group.

PostgreSQL version 9.6.2 on Amazon RDS also supports altering enum values. For more information, see ALTER ENUM for PostgreSQL.

For more information on the fixes in 9.6.2, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL version 9.6.1 on Amazon RDS

PostgreSQL version 9.6.1 contains several new features and improvements. For more information about the fixes and improvements in PostgreSQL 9.6.1, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS. For information about performing parallel queries and phrase searching using Amazon RDS for PostgreSQL 9.6.1, see the AWS database blog.

PostgreSQL version 9.6.1 includes the following changes:

  • Parallel query processing: Supports parallel processing of large read-only queries, allowing sequential scans, hash joins, nested loops, and aggregates to be run in parallel. By default, parallel query processing is not enabled. To enable parallel query processing, set the parameter max_parallel_workers_per_gather to a value larger than zero.

  • Updated postgres_fdw extension: Supports remote JOINs, SORTs, UPDATEs, and DELETE operations.

  • plv8 update: Provides version 1.5.3 of the plv8 language.

  • PostGIS version update: Supports POSTGIS="2.3.0 r15146" GEOS="3.5.0-CAPI-1.9.0 r4084" PROJ="Rel. 4.9.2, 08 September 2015" GDAL="GDAL 2.1.1, released 2016/07/07" LIBXML="2.9.1" LIBJSON="0.12" RASTER

  • Vacuum improvement: Avoids scanning pages unnecessarily during vacuum freeze operations.

  • Full-text search support for phrases: Supports the ability to specify a phrase-search query in tsquery input using the new operators <-> and <N>.

  • Two new extensions are supported:

    • bloom, an index access method based on Bloom filters

    • pg_visibility, which provides a means for examining the visibility map and page-level visibility information of a table.

  • With the release of version 9.6.2, you can now edit the max_worker_processes parameter in a PostgreSQL version 9.6.1 DB parameter group.

You can create a new PostgreSQL 9.6.1 database instance using the AWS Management Console, AWS CLI, or RDS API. You can also upgrade an existing PostgreSQL 9.5 instance to version 9.6.1 using major version upgrade. If you want to upgrade a DB instance from version 9.4 to 9.6, you must perform a point-and-click upgrade to the next major version first. Each upgrade operation involves a short period of unavailability for your DB instance.

PostgreSQL 9.5 versions

PostgreSQL version 9.5.25 on Amazon RDS

PostgreSQL version 9.5.25 is now available on Amazon RDS. PostgreSQL version 9.5.25 contains several improvements that were announced for PostgreSQL release 9.5.25.

For information on all extensions, see PostgreSQL version 9.5.x extensions supported on Amazon RDS.

PostgreSQL version 9.5.24 on Amazon RDS

PostgreSQL version 9.5.24 is now available on Amazon RDS. PostgreSQL version 9.5.24 contains several improvements that were announced for PostgreSQL release 9.5.24.

For information on all extensions, see PostgreSQL version 9.5.x extensions supported on Amazon RDS.

PostgreSQL version 9.5.23 on Amazon RDS

PostgreSQL version 9.5.23 is now available on Amazon RDS. PostgreSQL version 9.5.23 contains several improvements that were announced for PostgreSQL release 9.5.23.

For information on all extensions, see PostgreSQL version 9.5.x extensions supported on Amazon RDS.

PostgreSQL version 9.5.22 on Amazon RDS

PostgreSQL version 9.5.22 contains several bug fixes for issues in release 9.5.21. For more information on the fixes in PostgreSQL 9.5.22, see the PostgreSQL 9.5.22 documentation.

This version also includes the following change:

  • Upgraded the pg_hint_plan extension to version 1.1.9.

For information on all extensions, see PostgreSQL version 9.5.x extensions supported on Amazon RDS.

PostgreSQL version 9.5.21 on Amazon RDS

PostgreSQL version 9.5.21 contains several bug fixes for issues in release 9.5.20. For more information on the fixes in PostgreSQL 9.5.21, see the PostgreSQL 9.5.21 documentation.

PostgreSQL version 9.5.20 on Amazon RDS

PostgreSQL version 9.5.20 contains several bug fixes for issues in release 9.5.19. For more information on the fixes in PostgreSQL 9.5.20, see the PostgreSQL documentation.

PostgreSQL version 9.5.19 on Amazon RDS

PostgreSQL version 9.5.19 contains several bug fixes for issues in release 9.5.18. For more information on the fixes in PostgreSQL 9.5.19, see the PostgreSQL documentation.

The PostGIS extension is updated to version 2.5.2.

PostgreSQL version 9.5.18 on Amazon RDS

This release contains bug fixes and improvements done by the PostgreSQL community.

With this release, the pg_hint_plan extension has been updated to version 1.1.8.

For more information on the fixes in PostgreSQL 9.5.18, see the PostgreSQL documentation.

PostgreSQL version 9.5.16 on Amazon RDS

PostgreSQL version 9.5.16 contains several bug fixes for issues in release 9.5.15. For more information on the fixes in 9.5.16, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.5.15 on Amazon RDS

PostgreSQL version 9.5.15 contains several bug fixes for issues in release 9.5.14. For more information on the fixes in 9.5.15, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.5.14 on Amazon RDS

PostgreSQL version 9.5.14 contains several bug fixes for issues in release 9.5.13. For more information on the fixes in 9.5.14, see the PostgreSQL documentation.

For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.5.13 on Amazon RDS

PostgreSQL version 9.5.13 contains several bug fixes for issues in release 9.5.12. For more information on the fixes in 9.5.13, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

This version includes the following extension updates:

  • Update of the pgaudit extension to version 1.0.6. See Working with the pgaudit extension.

  • Update of the pg_hint_plan extension to version 1.1.5.

  • Update of the plv8 extension to version 2.1.2.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.5.12 on Amazon RDS

PostgreSQL version 9.5.12 contains several bug fixes for issues in release 9.5.10 For more information on the fixes in 9.5.12, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

For the complete list of extensions supported by Amazon RDS for PostgreSQL, see PostgreSQL extensions supported on Amazon RDS.

PostgreSQL version 9.5.10 on Amazon RDS

PostgreSQL version 9.5.10 contains several bug fixes for issues in version 9.5.9. For more information on the fixes in 9.5.10, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL version 9.5.9 on Amazon RDS

PostgreSQL version 9.5.9 contains several bug fixes for issues in version 9.5.8. For more information on the fixes in 9.5.9, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL version 9.5.7 on Amazon RDS

PostgreSQL version 9.5.7 contains several new features and bug fixes. This version includes the following features:

  • Supports the extension pgaudit version 1.0.5. This extension provides detailed session and object audit logging. For more information on using pgaudit with Amazon RDS, see Working with the pgaudit extension.

  • Supports wal2json, an output plugin for logical decoding.

  • Supports the auto_explain extension. You can use this extension to log execution plans of slow statements automatically. The following example shows how to use auto_explain from within an Amazon RDS PostgreSQL session.

    LOAD '$libdir/plugins/auto_explain';

    For more information on using auto_explain, see the PostgreSQL documentation.

PostgreSQL version 9.5.6 on Amazon RDS

PostgreSQL version 9.5.6 contains several new features and bug fixes. The new version also includes the following extension versions:

  • PostGIS version 2.2.5

  • pg_freespacemap version 1.1–Provides a way to examine the free space map (FSM). This extension provides an overloaded function called pg_freespace. This function shows the value recorded in the free space map for a given page, or for all pages in the relation.

  • pg_hint_plan version 1.1.3– Provides control of execution plans by using hinting phrases at the beginning of SQL statements.

PostgreSQL version 9.5.6 on Amazon RDS also supports altering enum values. For more information, see ALTER ENUM for PostgreSQL.

For more information on the fixes in 9.5.6, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL version 9.5.4 on Amazon RDS

PostgreSQL version 9.5.4 contains several fixes to issues found in previous versions. For more information on the fixes in 9.5.4, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL supports the streaming of WAL changes using logical replication decoding. Amazon RDS supports logical replication for PostgreSQL version 9.5.4 and higher. For more information about PostgreSQL logical replication on Amazon RDS, see Logical replication for PostgreSQL on Amazon RDS.

Beginning with PostgreSQL version 9.5.4 for Amazon RDS, the command ALTER USER WITH BYPASSRLS is supported.

PostgreSQL versions 9.5.4 and later support event triggers, and Amazon RDS supports event triggers for these versions. You can use the master user account to create, modify, rename, and delete event triggers. Event triggers are at the DB instance level, so they can apply to all databases on an instance. For more information about PostgreSQL event triggers on Amazon RDS, see Event triggers for PostgreSQL on Amazon RDS.

PostgreSQL version 9.5.2 on Amazon RDS

PostgreSQL version 9.5.2 contains several fixes to issues found in previous versions. For more information on the features in 9.5.2, see the PostgreSQL documentation. For information on upgrading the engine version for your PostgreSQL DB instance, see Upgrading the PostgreSQL DB engine for Amazon RDS.

PostgreSQL version 9.5.2 doesn't support the db.m1 or db.m2 DB instance classes. If you need to upgrade a DB instance running PostgreSQL version 9.4 to version 9.5.2 to one of these instance classes, you need to scale compute. To do that, you need a comparable db.t2 or db.m3 DB instance class before you can upgrade a DB instance running PostgreSQL version 9.4 to version 9.5.2. For more information on DB instance classes, see DB instance classes.

Native PostgreSQL version 9.5.2 introduced the command ALTER USER WITH BYPASSRLS.

This release includes updates from previous versions, including the following:

  • CVE-2016-2193: Fixes an issue where a query plan might be reused for more than one ROLE in the same session. Reusing a query plan can cause the query to use the wrong set of Row Level Security (RLS) policies.

  • CVE-2016-3065: Fixes a server crash bug triggered by using pageinspect with BRIN index pages. Because an attacker might be able to expose a few bytes of server memory, this crash is being treated as a security issue.

Major enhancements in RDS for PostgreSQL 9.5 include the following:

  • UPSERT: Allow INSERTs that would generate constraint conflicts to be turned into UPDATEs or ignored

  • Add the GROUP BY analysis features GROUPING SETS, CUBE, and ROLLUP

  • Add row-level security control

  • Create mechanisms for tracking the progress of replication, including methods for identifying the origin of individual changes during logical replication

  • Add Block Range Indexes (BRIN)

  • Add substantial performance improvements for sorting

  • Add substantial performance improvements for multi-CPU machines

  • PostGIS 2.2.2 - To use this latest version of PostGIS, use the ALTER EXTENSION UPDATE statement to update after you upgrade to version 9.5.2. Example:

    ALTER EXTENSION POSTGIS UPDATE TO '2.2.2'

  • Improved visibility of autovacuum sessions by allowing the rds_superuser account to view autovacuum sessions in pg_stat_activity. For example, you can identify and terminate an autovacuum session that is blocking a command from running, or running slower than a manually issued vacuum command.

RDS for PostgreSQL version 9.5.2 includes the following new extensions:

  • address_standardizer – A single-line address parser that takes an input address and normalizes it based on a set of rules stored in a table, helper lex, and gaz tables.

  • hstore_plperl – Provides transforms for the hstore type for PL/Perl.

  • tsm_system_rows – Provides the table sampling method SYSTEM_ROWS, which can be used in the TABLESAMPLE clause of a SELECT command.

  • tsm_system_time – Provides the table sampling method SYSTEM_TIME, which can be used in the TABLESAMPLE clause of a SELECT command.

PostgreSQL extensions supported on Amazon RDS

RDS for PostgreSQL supports many PostgreSQL extensions. The PostgreSQL community sometimes refers to these as modules. Extensions expand on the functionality provided by the PostgreSQL engine. You can find a list of extensions supported by Amazon RDS in the default DB parameter group for that PostgreSQL version. You can also see the current extensions list using psql by showing the rds.extensions parameter as in the following example.

SHOW rds.extensions;
Note

Parameters added in a minor version release might display inaccurately when using the rds.extensions parameter in psql.

The following sections show the extensions supported by Amazon RDS for the major PostgreSQL versions.

Restricting installation of PostgreSQL extensions

You can restrict which extensions can be installed on a PostgreSQL DB instance. To do so, set the rds.allowed_extensions parameter to a string of comma-separated extension names. Only these extensions can then be installed in the PostgreSQL DB instance.

The default string for the rds.allowed_extensions parameter is '*', which means that any extension available for the engine version can be installed. Changing the rds.allowed_extensions parameter does not require a database restart because it's a dynamic parameter.

The PostgreSQL DB instance engine must be one of the following versions for you to use the rds.allowed_extensions parameter:

  • PostgreSQL 13.2 or a later minor version

  • PostgreSQL 12.6 or a later minor version

To see which extension installations are allowed, use the following psql command.

postgres=>SHOW rds.allowed_extensions; rds.allowed_extensions ------------------------ *

If an extension was installed prior to it being left out of the list in the rds.allowed_extensions parameter, the extension can still be used normally, and commands such as ALTER EXTENSION and DROP EXTENSION will continue to work. However, after an extension is restricted, CREATE EXTENSION commands for the restricted extension will fail.

Installation of extension dependencies with CREATE EXTENSION CASCADE are also restricted. The extension and its dependencies must be specified in rds.allowed_extensions. If an extension dependency installation fails, the entire CREATE EXTENSION CASCADE statement will fail.

If an extension is not included with the rds.allowed_extensions parameter, you will see an error such as the following if you try to install it.

ERROR: permission denied to create extension "extension-name" HINT: This extension is not specified in "rds.allowed_extensions".

PostgreSQL version 13 extensions supported on Amazon RDS

The following table shows PostgreSQL extensions for PostgreSQL version 13 that are currently supported on Amazon RDS. For more information on PostgreSQL extensions, see Packaging related objects into an extension.

Extension 13.3 13.2 13.1
address_standardizer 3.0.3 3.0.2 3.0.2
address_standardizer_data_us 3.0.3 3.0.2 3.0.2
amcheck 1.2 1.2 1.2
aws_commons 1.1 1.1 1.1
aws_lambda 1.0 1.0 N/A
aws_s3.table_import_from_s3 aws_s3.query_export_to_s3 1.1 1.1 1.1
bloom 1.0 1.0 1.0
bool_plperl 1.0 1.0 1.0
btree_gin 1.3 1.3 1.3
btree_gist 1.5 1.5 1.5
citext 1.6 1.6 1.6
cube 1.4 1.4 1.4
dblink 1.2 1.2 1.2
dict_int 1.0 1.0 1.0
dict_xsyn 1.0 1.0 1.0
earthdistance 1.1 1.1 1.1
fuzzystrmatch 1.1 1.1 1.1
hll 2.15 2.15 2.15
hstore 1.7 1.7 1.7
hstore_plperl 1.0 1.0 1.0
ICU module 60.2 60.2 60.2
intagg 1.1 1.1 1.1
intarray 1.3 1.3 1.3
ip4r 2.4 2.4 2.4
isn 1.2 1.2 1.2
jsonb_plperl 1.0 1.0 1.0
log_fdw 1.2 1.2 1.2
ltree 1.2 1.2 1.2
oracle_fdw 2.3.0 N/A N/A
orafce 3.15 3.13.4 3.13.4
pageinspect 1.8 1.8 1.8
pg_bigm 1.2 1.2 N/A
pg_buffercache 1.3 1.3 1.3
pg_cron 1.3.1 1.3.0 1.3.0
pg_freespacemap 1.2 1.2 1.2
pg_hint_plan 1.3.7 1.3.7 1.3.7
pg_partman 4.5.1 4.4.0 4.4.0
pg_prewarm 1.2 1.2 1.2
pg_proctab 0.0.9 0.0.9 0.0.9
pg_repack 1.4.6 1.4.6 1.4.6
pg_similarity 1.0 1.0 1.0
pg_stat_statements 1.8 1.8 1.8
pg_transport 1.0 1.0 1.0
pg_trgm 1.5 1.5 1.5
pg_visibility 1.2 1.2 1.2
pgaudit 1.5 1.5 1.5
pgcrypto 1.3 1.3 1.3
pglogical 2.3.3 2.3.3 2.3.3
pgrouting 3.1.0 3.1.0 3.1.0
pgrowlocks 1.2 1.2 1.2
pgstattuple 1.5 1.5 1.5
pgTAP 1.1.0 1.1.0 1.1.0
plcoffee 2.3.15 2.3.15 2.3.15
plls 2.3.15 2.3.15 2.3.15
plperl 1.0 1.0 1.0
plpgsql 1.0 1.0 1.0
plprofiler 4.1 4.1 4.1
pltcl 1.0 1.0 1.0
plv8 2.3.15 2.3.15 2.3.15
PostGIS 3.0.3 3.0.2 3.0.2
postgis_raster 3.0.3 3.0.2 3.0.2
postgis_tiger_geocoder 3.0.3 3.0.2 3.0.2
postgis_topology 3.0.3 3.0.2 3.0.2
postgres_fdw 1.0 1.0 1.0
prefix 1.2.0 1.2.0 1.2.0
rdkit 3.8 3.8 3.8
rds_tools 1.0 1.0 1.0
sslinfo 1.2 1.2 1.2
tablefunc 1.0 1.0 1.0
test_parser 1.0 1.0 1.0
tsm_system_rows 1.0 1.0 1.0
tsm_system_time 1.0 1.0 1.0
unaccent 1.1 1.1 1.1
uuid-ossp 1.1 1.1 1.1
wal2json 2.3 2.3 2.3

PostgreSQL trusted extensions

To install most PostgreSQL extensions requires rds_superuser privileges. PostgreSQL 13 introduced trusted extensions, which reduces the need to grant rds_superuser privileges to regular users. With this feature, users can install many extensions if they have the CREATE privilege on the current database instead of requiring the rds_superuser role. For more information, see the SQL CREATE EXTENSION command in the PostgreSQL documentation.

The following lists the extensions that can be installed by a user who has the CREATE privilege on the current database and do not require the rds_superuser role:

PostgreSQL version 12 extensions supported on Amazon RDS

The following table shows PostgreSQL extensions for PostgreSQL version 12 that are currently supported on Amazon RDS. For more information on PostgreSQL extensions, see Packaging related objects into an extension.

Extension 12.7 12.6 12.5 12.4 12.3 12.2
address_standardizer 3.0.3 3.0.2 3.0.0 3.0.0 3.0.0 3.0.0
address_standardizer_data_us 3.0.3 3.0.2 3.0.0 3.0.0 3.0.0 3.0.0
amcheck 1.2 1.2 1.2 1.2 1.2 1.2
aws_commons 1.0 1.0 1.0 1.0 1.0 1.0
aws_lambda 1.0 1.0 N/A N/A N/A N/A
aws_s3.table_import_from_s3 aws_s3.query_export_to_s3 1.1 1.1 1.1 1.1 1.0 1.0
bloom 1.0 1.0 1.0 1.0 1.0 1.0
btree_gin 1.3 1.3 1.3 1.3 1.3 1.3
btree_gist 1.5 1.5 1.5 1.5 1.5 1.5
citext 1.6 1.6 1.6 1.6 1.6 1.6
cube 1.4 1.4 1.4 1.4 1.4 1.4
dblink 1.2 1.2 1.2 1.2 1.2 1.2
dict_int 1.0 1.0 1.0 1.0 1.0 1.0
dict_xsyn 1.0 1.0 1.0 1.0 1.0 1.0
earthdistance 1.1 1.1 1.1 1.1 1.1 1.1
fuzzystrmatch 1.1 1.1 1.1 1.1 1.1 1.1
hll 2.14 2.14 2.14 2.14 2.14 2.14
hstore 1.6 1.6 1.6 1.6 1.6 1.6
hstore_plperl 1.0 1.0 1.0 1.0 1.0 1.0
ICU module 60.2 60.2 60.2 60.2 60.2 60.2
intagg 1.1 1.1 1.1 1.1 1.1 1.1
intarray 1.2 1.2 1.2 1.2 1.2 1.2
ip4r 2.4 2.4 2.4 2.4 2.4 2.4
isn 1.2 1.2 1.2 1.2 1.2 1.2
jsonb_plperl 1.0 1.0 1.0 1.0 1.0 1.0
log_fdw 1.1 1.1 1.1 1.1 1.1 1.1
ltree 1.1 1.1 1.1 1.1 1.1 1.1
oracle_fdw 2.3.0 N/A N/A N/A N/A N/A
orafce 3.15 3.8 3.8 3.8 3.8 3.8
pageinspect 1.7 1.7 1.7 1.7 1.7 1.7
pg_bigm 1.2 1.2 N/A N/A N/A N/A
pg_buffercache 1.3 1.3 1.3 1.3 1.3 1.3
pg_cron 1.3.1 1.3.0 1.3.0 N/A N/A N/A
pg_freespacemap 1.2 1.2 1.2 1.2 1.2 1.2
pg_hint_plan 1.3.5 1.3.5 1.3.5 1.3.5 1.3.5 1.3.4
pg_partman 4.5.1 4.4.0 4.4.0 N/A N/A N/A
pg_prewarm 1.2 1.2 1.2 1.2 1.2 1.2
pg_proctab 0.0.9 0.0.9 0.0.9 0.0.9 N/A N/A
pg_repack 1.4.5 1.4.5 1.4.5 1.4.5 1.4.5 1.4.5
pg_similarity 1.0 1.0 1.0 1.0 1.0 1.0
pg_stat_statements 1.7 1.7 1.7 1.7 1.7 1.7
pg_transport 1.0 1.0 1.0 1.0 1.0 1.0
pg_trgm 1.4 1.4 1.4 1.4 1.4 1.4
pg_visibility 1.2 1.2 1.2 1.2 1.2 1.2
pgaudit 1.4 1.4 1.4 1.4 1.4 1.4
pgcrypto 1.3 1.3 1.3 1.3 1.3 1.3
pglogical 2.3.2 2.3.2 2.3.2 2.3.2 2.3.1 2.3.0
pgrouting 3.0.0 3.0.0 3.0.0 3.0.0 3.0.0 3.0.0
pgrowlocks 1.2 1.2 1.2 1.2 1.2 1.2
pgstattuple 1.5 1.5 1.5 1.5 1.5 1.5
pgTAP 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0
plcoffee 2.3.14 2.3.14 2.3.14 2.3.14 2.3.14 2.3.14
plls 2.3.14 2.3.14 2.3.14 2.3.14 2.3.14 2.3.14
plperl 1.0 1.0 1.0 1.0 1.0 1.0
plpgsql 1.0 1.0 1.0 1.0 1.0 1.0
plprofiler 4.1 4.1 4.1 4.1 4.1 4.1
pltcl 1.0 1.0 1.0 1.0 1.0 1.0
plv8 2.3.14 2.3.14 2.3.14 2.3.14 2.3.14 2.3.14
PostGIS 3.0.3 3.0.2 3.0.0 3.0.0 3.0.0 3.0.0
postgis_raster 3.0.3 3.0.2 3.0.0 3.0.0 3.0.0 3.0.0
postgis_tiger_geocoder 3.0.3 3.0.2 3.0.0 3.0.0 3.0.0 3.0.0
postgis_topology 3.0.3 3.0.2 3.0.0 3.0.0 3.0.0 3.0.0
postgres_fdw 1.0 1.0 1.0 1.0 1.0 1.0
prefix 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0
rdkit 3.8 3.8 3.8 3.8 N/A N/A
sslinfo 1.2 1.2 1.2 1.2 1.2 1.2
tablefunc 1.0 1.0 1.0 1.0 1.0 1.0
test_parser 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_rows 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_time 1.0 1.0 1.0 1.0 1.0 1.0
unaccent 1.1 1.1 1.1 1.1 1.1 1.1
uuid-ossp 1.1 1.1 1.1 1.1 1.1 1.1
wal2json 2.3 2.3 2.3 2.3 2.1 2.1

PostgreSQL version 11.x extensions supported on Amazon RDS

The following tables show PostgreSQL extensions for PostgreSQL version 11.x that are currently supported by PostgreSQL on Amazon RDS. "N/A" indicates that the extension is not available for that PostgreSQL version. For more information on PostgreSQL extensions, see Packaging related objects into an extension.

Extension 11.12 11.11 11.10 11.9 11.8 11.7 11.6 11.5 11.4 11.2 11.1
address_standardizer 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1
address_standardizer_data_us 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1
aws_s3.table_import_from_s3 aws_s3.query_export_to_s3 1.1 1.1 1.1 1.1 N/A N/A N/A N/A N/A N/A N/A
amcheck yes yes yes yes yes yes yes yes yes yes yes
auto_explain yes yes yes yes yes yes yes yes yes yes yes
bloom 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
btree_gin 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
btree_gist 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
citext 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
cube 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4
dblink 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
decoder_raw yes yes yes yes yes yes yes yes yes yes yes
dict_int 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
dict_xsyn 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
earthdistance 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
fuzzystrmatch 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
hstore 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
hstore_plperl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
ICU module 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2
intagg 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
intarray 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
ip4r 2.3 2.3 2.3 2.3 2.3 2.3 2.3 2.3 2.3 2.3 2.3
isn 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
log_fdw 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
libprotobuf 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0
ltree 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
orafce 3.15 3.8 3.8 3.8 3.8 3.8 3.7 3.7 3.7 3.7 3.7
pageinspect 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6
pg_bigm 1.2 1.2 NA NA NA NA NA NA NA NA NA
pg_buffercache 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
pg_freespacemap 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pg_hint_plan 1.3.5 1.3.5 1.3.5 1.3.5 1.3.5 1.3.4 1.3.4 1.3.4 1.3.4 1.3.2 1.3.2
pg_prewarm 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pg_proctab 0.0.9 0.0.9 0.0.9 0.0.9 N/A N/A N/A N/A N/A N/A N/A
pg_repack 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4
pg_similarity 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
pg_stat_statements 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6
pg_transport 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 N/A N/A N/A
pg_trgm 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4
pg_visibility 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pgaudit 1.3.1 1.3.1 1.3.1 1.3.1 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0
pgcrypto 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
pglogical 2.2.2 2.2.2 2.2.2 2.2.2 2.2.1 2.2.1 2.2.1 2.2.1 2.2.1 2.2.1 2.2.1
pgrowlocks 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pgrouting 2.6.1 2.6.1 2.6.1 2.6.1 2.6.1 2.6.1 2.6.1 2.6.1 2.6.1 2.6.1 2.6.1
pgstattuple 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
pgTAP 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.1.0 1.0 1.0 1.0 N/A
plcoffee 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8
plls 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8
plperl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plpgsql 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plprofiler 4.1 4.1 4.1 4.1 4.1 4.1 4.1 N/A N/A N/A N/A
pltcl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plv8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8 2.3.8
PostGIS 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.1 2.5.1 2.5.1
postgis_tiger_geocoder 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1
postgis_topology 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1 2.5.1
postgres_fdw 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
postgresql-hll 2.11 2.11 2.11 2.11 2.11 2.11 2.11 2.11 2.11 2.11 2.11
prefix 1.2.8 1.2.8 1.2.8 1.2.8 1.2.8 1.2.8 1.2.8 1.2.8 1.2.8 1.2.8 1.2.8
rdkit 3.8 3.8 3.8 3.8 N/A N/A N/A N/A N/A N/A N/A
sslinfo 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
tablefunc 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
test_decoding yes yes yes yes yes yes yes yes yes yes yes
test_parser 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_rows 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_time 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
unaccent 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
uuid-ossp 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
wal2json 2.3 2.3 2.3 2.3 2.1 2.1 Commit hash 9e962bad Commit hash 9e962bad Commit hash 9e962bad Commit hash 9e962bad Commit hash 9e962bad

PostgreSQL version 10.x extensions supported on Amazon RDS

The following tables show PostgreSQL extensions for PostgreSQL version 10 that are currently supported by PostgreSQL on Amazon RDS. "N/A" indicates that the extension is not available for that PostgreSQL version. For more information on PostgreSQL extensions, see Packaging related objects into an extension.

Extension 10.17 10.16 10.15 10.14 10.13 10.12 10.11 10.10 10.9 10.7 10.6 10.5 10.4 10.3 10.1
address_standardizer 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2
address_standardizer_data_us 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2
amcheck yes yes yes yes yes yes yes yes yes yes yes yes yes yes N/A
auto_explain yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes
aws_s3 1.1 1.1 1.1 1.1 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
bloom 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
btree_gin 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
btree_gist 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
chkpass 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
citext 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4
cube 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
dblink 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
decoder_raw yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes
dict_int 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
dict_xsyn 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
earthdistance 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
fuzzystrmatch 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
hstore 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4
hstore_plperl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
ICU module 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2 60.2
intagg 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
intarray 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
ip4r 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.0 2.0
isn 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
log_fdw 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
libprotobuf 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 1.3.0 N/A N/A N/A
ltree 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
orafce 3.15 3.8 3.8 3.8 3.8 3.8 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1
pgaudit 1.2.1 1.2.1 1.2.1 1.2.1 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0
pg_buffercache 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
pg_freespacemap 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pg_hint_plan 1.3.5 1.3.5 1.3.5 1.3.5 1.3.5 1.3.3 1.3.3 1.3.3 1.3.3 1.3.1 1.3.1 1.3.1 1.3.0 1.3.0 1.3.0
pg_prewarm 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
pg_repack 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.2 1.4.2
pg_similarity 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 N/A N/A N/A
pg_stat_statements 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.5 1.5 1.5 1.5
pg_transport 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 N/A N/A N/A N/A N/A N/A N/A
pg_trgm 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
pg_visibility 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pgcrypto 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
pageinspect 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 N/A N/A N/A
pglogical 2.2.2 2.2.2 2.2.2 2.2.2 2.2.0 2.2.0 2.2.0 2.2.0 2.2.0 2.2.0 2.2.0 2.2.0 N/A N/A N/A
pgrowlocks 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pgrouting 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2
pgstattuple 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5
plcoffee 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.0 2.1.0
plls 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.0 2.1.0
plperl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plpgsql 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plprofiler 4.1 4.1 4.1 4.1 4.1 4.1 4.1 N/A N/A N/A N/A N/A N/A N/A N/A
pltcl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plv8 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.0 2.1.0
PostGIS 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.4.4 2.4.4 2.4.4 2.4.4 2.4.4 2.4.2 2.4.2
postgis_tiger_geocoder 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2
postgis_topology 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2
postgres_fdw 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
postgresql-hll 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2
prefix 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0 1.2.0
sslinfo 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
tablefunc 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
test_decoding yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes
test_parser 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsearch2 (deprecated) 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_rows 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_time 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
unaccent 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
uuid-ossp 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
wal2json 2.3 2.3 2.3 2.3 2.1 2.1 Commit hash 9e962ba Commit hash 9e962ba Commit hash 9e962ba Commit hash 9e962ba Commit hash 9e962ba Commit hash 01c5c1e Commit hash 5352cc4 Commit hash 5352cc4 Commit hash 5352cc4

The tsearch2 extension is deprecated in version 10. The tsearch2 extension was remove from PostgreSQL version 11.1 on Amazon RDS.

PostgreSQL version 9.6.x extensions supported on Amazon RDS

The following tables show PostgreSQL extensions for PostgreSQL version 9.6.x that are currently supported by PostgreSQL on Amazon RDS. "N/A" indicates that the extension is not available for that PostgreSQL version. For more information on PostgreSQL extensions, see Packaging related objects into an extension.

Extension 9.6.22 9.6.20 9.6.19 9.6.18 9.6.17 9.6.16 9.6.15 9.6.14 9.6.12 9.6.11 9.6.10 9.6.9 9.6.8 9.6.6 9.6.5 9.6.3 9.6.2 9.6.1
address_standardizer 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.2 2.3.2 2.3.2 2.3.0
address_standardizer_data_us 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.2 2.3.2 2.3.2 2.3.0
auto_explain yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes N/A N/A
bloom 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
btree_gin 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
btree_gist 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
chkpass 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
citext 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
cube 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
dblink 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
decoder_raw yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes N/A N/A N/A
dict_int 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
dict_xsyn 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
earthdistance 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
fuzzystrmatch 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
hstore 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4
hstore_plperl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
intagg 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
intarray 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
ip4r 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.1.1 2.0 2.0 2.0 2.0 2.0 2.0
isn 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
log_fdw 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 N/A
ltree 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
orafce 3.15 3.8 3.8 3.8 3.8 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 3.6.1 N/A N/A N/A N/A
pgaudit 1.1.2 1.1.2 1.1.2 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1.1 1.1 1.1 1.1 1.1 N/A N/A
pg_buffercache 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pg_freespacemap 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 N/A
pg_hint_plan 1.2.6 1.2.6 1.2.6 1.2.6 1.2.5 1.2.5 1.2.5 1.2.5 1.2.3 1.2.3 1.2.3 1.2.2 1.2.2 1.1.3 1.1.3 1.1.3 1.1.3 N/A
pg_prewarm 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
pg_repack 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.3 1.4.2 1.4.2 1.4.1 1.4.0 N/A N/A
pg_similarity 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 N/A N/A N/A N/A N/A N/A N/A
pg_stat_statements 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4
pg_trgm 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
pg_visibility 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
pgcrypto 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
pglogical 2.2.2 2.2.2 2.2.2 2.2.0 2.2.0 2.2.0 2.2.0 2.2.0 2.2.0 2.2.0 2.2.0 N/A N/A N/A N/A N/A N/A N/A
pgrowlocks 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pgrouting 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.4.2 2.3.2 N/A N/A N/A
pgstattuple 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4 1.4
plcoffee 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 1.5.3 1.5.3 1.5.3 1.5.3 1.5.3
plls 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 1.5.3 1.5.3 1.5.3 1.5.3 1.5.3
plperl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plpgsql 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
pltcl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plv8 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.0 1.5.3 1.5.3 1.5.3 1.5.3 1.5.3
PostGIS 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.3.7 2.3.7 2.3.7 2.3.7 2.3.7 2.3.4 2.3.4 2.3.2 2.3.2 2.3.2 2.3.0
postgis_tiger_geocoder 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.2 2.3.2 2.3.2 2.3.0
postgis_topology 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.4 2.3.2 2.3.2 2.3.2 2.3.0
postgres_fdw 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
postgresql-hll 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 2.10.2 N/A N/A N/A
prefix 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 1.2.6 N/A N/A N/A N/A
sslinfo 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
tablefunc 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
test_decoding yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes
test_parser 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsearch2 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_rows 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_time 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
unaccent 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
uuid-ossp 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
wal2json version 2.3 version 2.3 version 2.3 version 2.1 version 2.1 Commit hash 9e962ba Commit hash 9e962ba Commit hash 9e962ba Commit hash 9e962ba Commit hash 9e962ba Commit hash 01c5c1e Commit hash 5352cc4 Commit hash 5352cc4 Commit hash 645ab69 Commit hash 645ab69 Commit hash 2828409 N/A N/A

PostgreSQL version 9.5.x extensions supported on Amazon RDS

The following tables show PostgreSQL extensions for PostgreSQL version 9.5.x that are currently supported by PostgreSQL on Amazon RDS. "N/A" indicates that the extension is not available for that PostgreSQL version. For more information on PostgreSQL extensions, see Packaging related objects into an extension.

Extension 9.5.25 9.5.24 9.5.23 9.5.22 9.5.21 9.5.20 9.5.19 9.5.18 9.5.16 9.5.15 9.5.14 9.5.13 9.5.12 9.5.10 9.5.9 9.5.7 9.5.6 9.5.4 9.5.2
address_standardizer 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.2 2.2.2
address_standardizer_data_us 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.2 2.2.2
auto_explain yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes N/A N/A N/A
bloom N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
btree_gin 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
btree_gist 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
chkpass 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
citext 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
cube 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
dblink 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
dict_int 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
dict_xsyn 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
earthdistance 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
fuzzystrmatch 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
hstore 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
hstore_plperl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
intagg 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
intarray 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
ip4r 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0
isn 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
log_fdw N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
ltree 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
pgaudit 1.0.6 1.0.6 1.0.6 1.0.6 1.0.6 1.0.6 1.0.6 1.0.6 1.0.6 1.0.6 1.0.6 1.0.6 1.0.5 1.0.5 1.0.5 1.0.5 N/A N/A N/A
pg_buffercache 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
pg_freespacemap 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 N/A N/A
pg_hint_plan 1.1.9 1.1.9 1.1.9 1.1.9 1.1.8 1.1.8 1.1.8 1.1.8 1.1.5 1.1.5 1.1.5 1.1.5 1.1.3 1.1.3 1.1.3 1.1.3 1.1.3 N/A N/A
pg_prewarm 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
pg_stat_statements 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
pg_trgm 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
pg_visibility N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A
pgcrypto 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
pgrowlocks 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1
pgstattuple 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
plcoffee 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4
plls 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 2.1.0 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4
plperl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plpgsql 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
pltcl 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
plv8 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.2 2.1.0 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4 1.4.4
PostGIS 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.5.2 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.2 2.2.2
postgis_tiger_geocoder 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.2 2.2.2
postgis_topology 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.5 2.2.2 2.2.2
postgres_fdw 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
sslinfo 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tablefunc 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
test_decoding yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes yes N/A N/A
test_parser 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsearch2 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
tsm_system_rows 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 N/A N/A
tsm_system_time 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 N/A N/A
unaccent 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
uuid-ossp 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
wal2json 2.1 2.1 2.1 2.1 2.1 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 Commit hash 2828409 N/A N/A N/A

Some supported PostgreSQL features

Amazon RDS supports many of the most common PostgreSQL extensions and features.

Using the log_fdw extension

The log_fdw extension is new for Amazon RDS for PostgreSQL version 9.6.2 and later. Using this extension, you can access your database engine log using a SQL interface. In addition to viewing the stderr log files that are generated by default on RDS, you can view CSV logs (set the log_destination parameter to csvlog) and build foreign tables with the data neatly split into several columns.

This extension introduces two new functions that make it easy to create foreign tables for database logs:

  • list_postgres_log_files() – Lists the files in the database log directory and the file size in bytes.

  • create_foreign_table_for_log_file(table_name text, server_name text, log_file_name text) – Builds a foreign table for the specified file in the current database.

All functions created by log_fdw are owned by rds_superuser. Members of the rds_superuser role can grant access to these functions to other database users.

The following example shows how to use the log_fdw extension.

To use the log_fdw extension

  1. Get the log_fdw extension.

    postgres=> CREATE EXTENSION log_fdw; CREATE EXTENSION
  2. Create the log server as a foreign data wrapper.

    postgres=> CREATE SERVER log_server FOREIGN DATA WRAPPER log_fdw; CREATE SERVER
  3. Select all from a list of log files.

    postgres=> SELECT * from list_postgres_log_files() order by 1;

    A sample response is as follows.

    file_name | file_size_bytes ----------------------------------+----------------- postgresql.log.2016-08-09-22.csv | 1111 postgresql.log.2016-08-09-23.csv | 1172 postgresql.log.2016-08-10-00.csv | 1744 postgresql.log.2016-08-10-01.csv | 1102 (4 rows)
  4. Create a table with a single 'log_entry' column for non-CSV files.

    postgres=> SELECT create_foreign_table_for_log_file('my_postgres_error_log', 'log_server', 'postgresql.log.2016-08-09-22.csv');

    A sample response is as follows.

    ----------------------------------- (1 row)
  5. Select a sample of the log file. The following code retrieves the log time and error message description.

    postgres=> SELECT log_time, message from my_postgres_error_log order by 1;

    A sample response is as follows.

    log_time | message ----------------------------------+--------------------------------------------------------------------------- Tue Aug 09 15:45:18.172 2016 PDT | ending log output to stderr Tue Aug 09 15:45:18.175 2016 PDT | database system was interrupted; last known up at 2016-08-09 22:43:34 UTC Tue Aug 09 15:45:18.223 2016 PDT | checkpoint record is at 0/90002E0 Tue Aug 09 15:45:18.223 2016 PDT | redo record is at 0/90002A8; shutdown FALSE Tue Aug 09 15:45:18.223 2016 PDT | next transaction ID: 0/1879; next OID: 24578 Tue Aug 09 15:45:18.223 2016 PDT | next MultiXactId: 1; next MultiXactOffset: 0 Tue Aug 09 15:45:18.223 2016 PDT | oldest unfrozen transaction ID: 1822, in database 1 (7 rows)

Upgrading plv8

If you use plv8 and upgrade PostgreSQL to a new plv8 version, you immediately take advantage of the new extension. Take the following steps to synchronize your catalog metadata with the new version of plv8. These steps are optional, but we highly recommended that you complete them to avoid metadata mismatch warnings.

To synchronize your catalog metadata with a new version of plv8

  1. Verify that you need to update. To do this, run the following command while connected to your instance.

    select * from pg_available_extensions where name in ('plv8','plls','plcoffee');

    If your results contain values for an installed version that is a lower number than the default version, continue with this procedure to update your extensions.

    For example, the following result set indicates that you should update.

    name | default_version | installed_version | comment --------+-----------------+-------------------+-------------------------------------------------- plls | 2.1.0 | 1.5.3 | PL/LiveScript (v8) trusted procedural language plcoffee| 2.1.0 | 1.5.3 | PL/CoffeeScript (v8) trusted procedural language plv8 | 2.1.0 | 1.5.3 | PL/JavaScript (v8) trusted procedural language (3 rows)
  2. Take a snapshot of your instance as a precaution, because the upgrade drops all your plv8 functions. You can continue with the following steps while the snapshot is being created.

    For steps to create a snapshot see, Creating a DB snapshot

  3. Get a count of the number of plv8 functions in your DB instance so you can validate that they are all in place after the upgrade.

    The following code returns the number of functions written in plv8, plcoffee, or plls.

    select proname, nspname, lanname from pg_proc p, pg_language l, pg_namespace n where p.prolang = l.oid and n.oid = p.pronamespace and lanname in ('plv8','plcoffee','plls');
  4. Use pg_dump to create a schema-only dump file.

    The following code creates a file on your client machine in the /tmp directory.

    ./pg_dump -Fc --schema-only -U master postgres > /tmp/test.dmp

    This example uses the following options:

    • -FC "format custom"

    • --schema-only "will only dump commands necessary to create schema (functions in our case)"

    • -U "rds master username"

    • database "the database name in our instance"

    For more information on pg_dump, see the pg_dump page in the PostgreSQL documentation.

  5. Extract the "CREATE FUNCTION" DDL statement that is present in the dump file.

    The following code extracts the DDL statement needed to create the functions. You use this in subsequent steps to recreate the functions. The code uses the grep command to extract the statements to a file.

    ./pg_restore -l /tmp/test.dmp | grep FUNCTION > /tmp/function_list/

    For more information on pg_restore see, pg_restore.

  6. Drop the functions and extensions.

    The following code drops any plv8 based objects. The cascade