What’s New in PostgreSQL/EPAS 13 RPMs?

Devrim Gündüz December 28, 2020

What’s New in PostgreSQL/EPAS 13 RPMs?

It has been a while since PostgreSQL/EPAS 13 has been out, and v13 RPMs have some new features for end users. The changes will further enhance performance, usability, and database security.

In this blog post, I will summarize the updates and what’s important to know!

 

Removed RHEL/CentOS 6 support

PostgreSQL 13 RPMs are not available on RHEL/CentOS 6. They have reached EOL on 30 November 2020, and I did not want to introduce another release that we have to support. 

Please note that I will continue building PostgreSQL RPMs for the supported versions, which is 14 Nov 2024 for v12 per PostgreSQL website. However, I am not introducing a new package to the RHEL 6 platform. Make sure to upgrade as soon as you can.

 

Python 3 is now the default version

I updated spec files so that Python3 is the default version, and also dropped support for PL/Python2 in the PostgreSQL 13 RPMs. Fedora removed(-ish) Python 2 support as of v33, and future releases of RHEL will also follow that.

RHEL 7 and 8 users still can use PL/Python2 for the previous PostgreSQL releases, but you need to migrate your functions from Python2 to Python 3 before upgrading to PostgreSQL 13. Please note that this is an RPM-only feature. PostgreSQL upstream did not remove Python2 support yet. EPAS RPMs still support PL/Python 2 along with EPAS 13 RPMs.

 

Set the default "host" auth to scram-sha-256

As of v13, the RPMs are using scram-sha-256 in postgresql.conf and pg_hba.conf. I also updated the setup script to initialize the cluster with SCRAM authentication. If you are upgrading from previous versions and not using SCRAM auth, you will need to migrate passwords as well. 

Jonathan Katz wrote an excellent blog post about migrating PostgreSQL passwords from md5 to SCRAM. On the other hand, EPAS RPMs are still using md5 by default. 

 

Symlinked setup script under $PATH

PostgreSQL RPM setup script, which is under the installation directory (usr/pgsql-13/bin/postgresql-13-setup) can now be called directly. I created a symlink under /usr/bin/ for convenience. Initializing the cluster is now easier:

postgresql-13-setup initdb

Please note that this feature is now available with the latest PostgreSQL minor updates of v10 and above. You still need to use the full path for EPAS RPMs.

If you have any questions, please email to pgsql-pkg-yum@postgresql.org, or use PostgreSQL RPM issue tracker to report problems.

 

Devrim GündüzPrincipal Systems Engineer

At EDB, Devrim specializes in clustering, high availability and replication solutions for EDB Postgres™ Advanced Server as well as architecting large-scale deployments for enterprise customers. As a contributor to the PostgreSQL Community, Devrim is the lead maintainer of the PostgreSQL YUM repository, and contributes to other PostgreSQL-related projects.