---
title: PostgreSQL version updates
description: Learn more about the latest updates and features available in each PostgreSQL version at Scaleway
tags: databases postgresql versions updates features
dates:
  validation: 2025-09-03
---

This page lists updates for PostreSQL versions and their corresponding features that are supported at Scaleway.

## PostgreSQL 17

Find below the features and updates available with PostgreSQL 17.

### Roles

The `RDB` admin role can now assign the following predefined roles:

| Role | Description |
| :--- | :--- |
| `pg_maintain` | Allows executing `VACUUM`, `ANALYZE`, `CLUSTER`, `REFRESH MATERIALIZED VIEW`, `REINDEX`, and `LOCK TABLE` on all relations, simulating `MAINTAIN` rights on those objects, even without having it explicitly. |

### Features

New features are available with PostgreSQL 17:

- The logical [replication of databases as a publisher](/managed-databases-for-postgresql-and-mysql/api-cli/logical-replication-as-publisher) is now supported.

### Extensions

- **PostGIS** - 3.14 and [3.5](https://postgis.net/tags/3.5/)
- **Timescale** - [2.22.1](https://github.com/timescale/timescaledb/releases/tag/2.22.1)
- **pgRouting** - [3.7.3](https://github.com/pgRouting/pgrouting/releases/tag/v3.7.3)
- **pgvector** - [0.8.1](https://github.com/pgvector/pgvector/releases/tag/v0.8.1)
- **H3 PG** - [4.2.3](https://github.com/zachasme/h3-pg/releases/tag/v4.2.3)

### Advanced settings

These are the new advanced settings available with PostgreSQL 17:

- `rdb.enable_logical_replication`
- `sync_replication_slots`

Refer to the official [Server configuration](https://www.postgresql.org/docs/17/runtime-config-compatible.html) PostgreSQL documentation for more information.

## PostgreSQL 16

Find below the new features and updates available with PostgreSQL 16.

### Roles

The `RDB` admin role can now assign the following predefined roles:

| Role | Description |
| :--- | :--- |
| `pg_read_all_data` | Has the right to read all data as if they have SELECT rights on objects and USAGE rights on schemas, without explicitly having said rights. |
| `pg_write_all_data`| Has the right to read all data as if they have INSERT, UPDATE and DELETE rights on objects and USAGE rights on schemas, without explicitly having said rights. |
| `pg_read_all_settings`| Has the right to read all configuration variables. |
| `pg_read_all_stats` | Has the right to read all `pg_stat_*` views and use statistics related extensions. |
| `pg_stat_scan_tables` | Has the right to run monitoring functions that may take ACCESS SHARE locks on tables, potentially for a long time. |
| `pg_monitor`| Has the right to read and execute various monitoring views and functions.  |
| `pg_signal_backend` | Has the right to signal another backend to cancel a query or terminate its session. |
| `pg_checkpoint` | Has the right to execute the CHECKPOINT command. |
| `pg_create_subscription` | Has the right to issue CREATE SUBSCRIPTION, if they have CREATE permissions on the database. |

<Message type="tip">
  Refer to the official [Predefined Roles](https://www.postgresql.org/docs/16/predefined-roles.html) PostgreSQL documentation for a more detailed description of the roles above.
</Message>

### Features

New features are available with PostgreSQL 16:

- The logical replication of databases as a subscriber is now supported. Refer to the [Setting up logical replication as a subscriber in PostgreSQL](/managed-databases-for-postgresql-and-mysql/api-cli/logical-replication-as-subscriber) documentation page for more information.
- Passwords are now encrypted using the `SCRAM-SHA-256` setting. If you upgrade your engine and are currently using MD5, you also have to migrate to SCRAM-SHA-256. Refer to the official [Password Authentication](https://www.postgresql.org/docs/current/auth-password.html#AUTH-PASSWORD) PostgreSQL documentation to learn how to do so.
- Support of the Timescale [pre-restore](https://docs.timescale.com/api/latest/administration/#timescaledb_pre_restore) and [post-restore](https://docs.timescale.com/api/latest/administration/#timescaledb_post_restore) features. They allow you to restore the database using `pg_restore`.

### Extensions

The following extensions were also upgraded.

- **PostGIS** - [3.5](https://postgis.net/tags/3.5/)
- **PG GEOS** - 3.13 native with PostGIS 3.5
- **Timescale** - [2.17](https://github.com/timescale/timescaledb/releases/tag/2.17.0)
- **pgRouting** - [3.6.2](https://github.com/pgRouting/pgrouting/releases/tag/v3.6.2)
- **pgvector** - [0.8.0](https://github.com/pgvector/pgvector/releases/tag/v0.8.0)
- **H3 PG** - [4.1.4](https://github.com/zachasme/h3-pg/releases/tag/v4.1.4)

### Advanced settings

These are the new advanced settings available with PostgreSQL 16:

#### Autovaccum

- `autovacuum_vacuum_insert_scale_factor`
- `autovacuum_vacuum_insert_threshold`
- `autovacuum_vacuum_scale_factor`
- `autovacuum_vacuum_threshold`

Refer to the official [Autovaccum](https://www.postgresql.org/docs/16/routine-vacuuming.html#AUTOVACUUM) PostgreSQL documentation for more information.

#### Error reporting and logging

- `cron.timezone`
- `log_checkpoints`
- `log_lock_waits`
- `log_min_duration_statement`
- `log_replication_commands`
- `log_temp_files`

Refer to the official [Error reporting and logging](https://www.postgresql.org/docs/16/runtime-config-logging.html) PostgreSQL documentation for more information.

#### PG stats parameters

- `pg_stat_statements.max`
- `pg_stat_statements.track`
- `pg_stat_statements.track_utility`

Refer to the official [PG stats parameters](https://www.postgresql.org/docs/16/pgstatstatements.html#PGSTATSTATEMENTS-CONFIG-PARAMS) PostgreSQL documentation for more information.

