If you upgrade to a new TimescaleDB version and encounter problems, you can roll back to a previously installed version. This works in the same way as a minor upgrade.

Downgrading is not supported for all versions. Generally, downgrades between patch versions and between consecutive minor versions are supported. For example, you can downgrade from TimescaleDB 2.5.2 to 2.5.1, or from 2.5.0 to 2.4.2. To check whether you can downgrade from a specific version, see the release notes.

Try for free on Timescale

Timescale is a fully managed service with automatic backup and restore, high availability with replication, seamless scaling and resizing, and much more. You can try Timescale free for thirty days.

Try for free

You can downgrade your on-premise TimescaleDB installation in-place. This means that you do not need to dump and restore your data. However, it is still important that you plan for your downgrade ahead of time.

Before you downgrade:

  • Read the release notes for the TimescaleDB version you are downgrading to.
  • Check which PostgreSQL version you are currently running. You might need to upgrade to the latest PostgreSQL version before you begin your TimescaleDB downgrade.
  • Perform a backup of your database. While TimescaleDB downgrades are performed in-place, downgrading is an intrusive operation. Always make sure you have a backup on hand, and that the backup is readable in the case of disaster.

This downgrade uses the PostgreSQL ALTER EXTENSION function to downgrade to a previous version of the TimescaleDB extension. TimescaleDB supports having different extension versions on different databases within the same PostgreSQL instance. This allows you to upgrade and downgrade extensions independently on different databases. Run the ALTER EXTENSION function on each database to downgrade them individually.

Important

The downgrade script is tested and supported for single-step downgrades. That is, downgrading from the current version, to the previous minor version. Downgrading might not work if you have made changes to your database between upgrading and downgrading.

  1. Set your connection string

    This variable holds the connection information for the database to upgrade:

    export SOURCE="postgres://<user>:<password>@<source host>:<source port>/<db_name>"
  2. Connect to your database instance

    psql -X -d $SOURCE

    The -X flag prevents any .psqlrc commands from accidentally triggering the load of a previous TimescaleDB version on session startup.

  3. Downgrade the TimescaleDB extension This must be the first command you execute in the current session:

    ALTER EXTENSION timescaledb UPDATE TO '<PREVIOUS_VERSION>';

    For example:

    ALTER EXTENSION timescaledb UPDATE TO '2.17.0';
  4. Check that you have downgraded to the correct version of TimescaleDB

    \dx timescaledb;

    Postgres returns something like:

    Name | Version | Schema | Description
    -------------+---------+--------+---------------------------------------------------------------------------------------
    timescaledb | 2.17.0 | public | Enables scalable inserts and complex queries for time-series data (Community Edition)

Keywords

Found an issue on this page?Report an issue or Edit this page in GitHub.