Product changelog

The latest features, improvements, and bug fixes.

Search titles, descriptions, products, and versions.

Change type

Databases

26 updates

Version 2.9.123

FeatureDatabases

Choose Your PostgreSQL Recovery Window

When available to your account, choose how far back point-in-time recovery reaches from your PostgreSQL database's Backups tab, without changing its backup schedule or restarting it.

  • Keep the default window as long as your backups, choose a shorter window, or turn point-in-time recovery off
  • Shortening the window keeps your scheduled and manual backups; hourly cleanup removes only older write-ahead log no longer needed for recovery
Show 3 more changes
  • Turning point-in-time recovery off keeps restores to each backup and requires automated backups to stay on
  • Widening the window builds up recovery history again; it cannot bring back log that was already removed
  • Archiving continues with every setting, so an archiving failure can still fill the database volume; separate archiving and backup-storage quota alerts remain in place
Read documentation (opens in a new tab)

Version 2.9.110

Bug fixDatabases

Replica, Failover and Lifecycle Fixes for Managed Databases

Standbys, planned changes, deletions and several database pages now behave the way you would expect.

  • Planned changes to a PostgreSQL database with a standby now switch over to it instead of restarting the primary, including when the standby was added after creation
  • Adding a standby or read replica to a PostgreSQL or MariaDB database no longer stalls before the new server can start
Show 5 more changes
  • Adding a replica, editing a database, saving its parameter group or expanding its storage no longer restarts an older PostgreSQL database as a side effect
  • The API's add and remove replica endpoints now actually scale managed PostgreSQL instead of answering success and changing nothing, and removing anything but the newest replica returns a clear error
  • A refused replica or scaling request shows its reason and the node list stays on screen, on database and cache pages
  • Turning on public access updates the host, port and connection string on the Connectivity tab without a reload, and a name that would clash with another engine's database in the same project is refused up front instead of getting stuck provisioning
  • Deleting a database no longer flips it to Error, with a notification to your team, before the deletion completes

Version 2.9.108

SecurityDatabases

Require TLS on Managed PostgreSQL and Choose Your TLS Floor

Refuse unencrypted connections to a PostgreSQL database with one switch, and decide whether older clients may still connect with TLS 1.2.

  • Turn on Require TLS in the database's Connectivity tab and connections without TLS are refused
  • It applies within about a minute while the database keeps running; set sslmode=require on every client before you switch it on
Show 3 more changes
  • It is off by default, so nothing changes until you turn it on, and you can turn it off again at any time
  • Managed PostgreSQL requires TLS 1.3 by default; set ssl_min_protocol_version to TLSv1.2 in the Parameters tab or a parameter group for clients that cannot negotiate TLS 1.3, such as Prisma on macOS and Windows
  • The TLS floor applies with a configuration reload, without a restart
Read documentation (opens in a new tab)

Version 2.9.107

AnnouncementDatabases

What New MySQL Databases Expect From Your Tables

New MySQL databases replicate every write, even on a single server, so they add a hidden primary key to tables without one, refuse storage engines that cannot be replicated and cap how much one transaction can change.

  • A table created without a primary key gets an invisible my_row_id key that SELECT * and your application never see, and one ALTER TABLE swaps it for your own key
  • Creating a MyISAM, BLACKHOLE, FEDERATED or ARCHIVE table fails with error 3161; leave out the ENGINE clause or use InnoDB
Show 5 more changes
  • Before you import a dump, convert its MyISAM tables to InnoDB at the source, or the import stops at their CREATE TABLE
  • Temporary MEMORY tables work, but writes to a permanent MEMORY table fail with error 3098, so keep permanent tables on InnoDB
  • One transaction's changes are capped at 2.5% of the plan's memory, between 16 MB and 150 MB; a bigger one is rolled back with error 3100, so split large imports, updates and deletes into batches
  • Restoring a backup fixes such tables in the new copy: other engines become InnoDB and tables without a key get the invisible one
  • Only new MySQL databases work this way; databases you created earlier keep their current behaviour
Read documentation (opens in a new tab)

Version 2.9.106

FeatureDatabases

MySQL Gains High Availability, Read Replicas and Daily Backups

New MySQL databases can run as a high-availability group with automatic failover you switch on or off at any time, add read replicas, and keep daily backups you restore into a new database.

  • Choose a single server or a high-availability group of three servers on separate hosts; if the primary fails, a standby takes over and the writer endpoint follows it automatically
  • Turn high availability on or off later from the Nodes tab or the API without recreating the database; your data and read replicas stay as they are, and each standby is billed at the same rate as the primary
Show 5 more changes
  • Add up to 5 read replicas by default, with or without high availability, behind a private reader endpoint that never sends reads to the primary; the Nodes tab and the API show each replica's status and lag
  • Automated backups run daily and are kept for 30 days unless your backup policy says otherwise; take a manual backup any time and restore any backup into a new database with your own accounts and grants
  • Change the plan with the servers restarting one at a time, grow storage online or with storage autoscaling, stop and start, and change timeouts and slow-query logging live from the Parameters tab
  • Pick MySQL 8.4 LTS, the default, or 9.7 when you create the database; firewalls, metrics and logs work as they do for your other databases
  • MySQL databases created before 23 September keep their current setup
Read documentation (opens in a new tab)

Version 2.9.100

Bug fixDatabases

Database Backups: Accurate Status, Clearer Labels, Safer Upgrades

The Backups tab now reports PostgreSQL and MariaDB backups truthfully, and a database that reuses a deleted database's name backs up normally.

  • The daily backups switch on PostgreSQL and MariaDB databases now reads Active when nightly backups run; it could say Inactive while backups were being taken
  • PostgreSQL and MariaDB recovery points are labelled Object storage, because they are stored in object storage separate from the database server, instead of Local only
Show 2 more changes
  • A database created with the name of one you deleted now backs up normally, because every new PostgreSQL and MariaDB database gets its own backup location
  • A database engine upgrade now waits for a completed backup before it changes anything, and a PostgreSQL upgrade is reported done only after a fresh backup of the new version succeeds

Version 2.9.97

FeatureDatabases

Rotate Managed PostgreSQL Passwords From the Dashboard or API

Replace the application or superuser password of a running managed PostgreSQL database in one step, from the database page or the API.

  • Rotate the application user's password from Connect to your database, or the postgres superuser password from Admin Credentials; each rotates on its own
  • Tick Disconnect existing sessions to close connections still using the old password; otherwise open connections stay up and new ones need the new password
Show 5 more changes
  • The new password is shown once the database confirms it, and if it cannot be confirmed the rotation is marked failed and the previous password keeps working
  • Team owners and admins are emailed, and the rotation is recorded in the activity log
  • Rotate through the API with POST /api/v1/database/{id}/credentials/rotate, setting role to superuser for the postgres password
  • SQL Studio refuses a password change on these two platform-managed roles, which would otherwise be silently undone, and points you to Rotate password
  • SQL Studio no longer keeps passwords typed into the editor: they are redacted from your query history and saved snippets, including entries saved earlier
Read documentation (opens in a new tab)

Version 2.9.91

FeatureDatabases

Database Performance Tab: Load, Top SQL and Lock Analysis

A new Performance tab on every managed PostgreSQL database shows what your sessions are waiting on, which statements and callers drive the load, and which sessions are blocking others.

  • Open the Performance tab on any managed PostgreSQL database to see load as average active sessions, sampled every 30 seconds and shown in one-minute steps by default
  • Slice the load by wait event, user, application, database, client host, session type or SQL statement, with your vCPU count drawn as a capacity line as load approaches it
Show 5 more changes
  • Top SQL ranks the statements that carried the most load over the range, with their share of it and the wait events behind them
  • Client hosts are named after the VPS, Rapids container, managed app or connection pooler they belong to, and a table under the chart ranks the top contributors of the current slice
  • Pick any range from 5 minutes to 15 days, including an exact start and end, and auto-refresh every 30 seconds, 1, 5 or 15 minutes, or not at all
  • Lock analysis lists the sessions blocked right now and the session holding the lock, with both queries
  • Read the same data from the API with GET /api/v1/database/{id}/load and GET /api/v1/database/{id}/queries, using a token with database:read
Read documentation (opens in a new tab)

Version 2.9.90

ImprovementDatabases

Database List With Cluster and Node Rows

The database list now shows the topology and live load you actually pay for: one row per database and one per node.

  • Each database shows its role summary (single node, or cluster with primary and replica counts), engine, size, pending engine update, public access and monthly cost
  • Node rows show the primary or replica role, readiness, replication lag, and live CPU and connections, refreshed every 30 seconds while the page is visible
Show 3 more changes
  • Pod health markers on the cluster row show how many alerts are open and their highest severity
  • Collapse nodes per cluster or hide them all, and sort by any sortable column; sorting used to do nothing
  • Rows carry only what the list needs: internal identifiers, host details and credentials no longer travel with the page
Read documentation (opens in a new tab)

Version 2.9.87

Bug fixDatabases

SQL Studio, Log Explorer and Pooler Fixes

Fixes for large query results, slow log searches and the connection pooler toggle.

  • SQL Studio no longer runs out of memory on large result sets; the agent got more headroom and a restart now returns a clear 503 instead of an empty error
  • Log Explorer times out cleanly after 25 seconds with a retry hint instead of hanging on very large log volumes
Show 2 more changes
  • Turning the connection pooler off and on in quick succession now has a short cooldown, which stops it wedging in a half-deleted state
  • The default PostgreSQL parameter groups log only statements slower than two seconds instead of every write, which keeps logs readable and searches fast; your own parameter group settings are respected
Read documentation (opens in a new tab)

Version 2.9.78

Bug fixDatabases

Real Backup Times, Stuck Removals and Name Validation

Three corrections to what the database pages tell you and do.

  • Managed PostgreSQL and MariaDB instances now show the actual time of their nightly backup instead of a fixed 2:00 AM UTC that never applied to them
  • A removal whose job died mid-flight, or whose deployment was already gone, no longer leaves the instance parked in a destroying state; it is completed or reported automatically
Show 1 more changes
  • Instance names are validated up front as lowercase labels that start with a letter and stay under 50 characters, in the create, edit, restore and clone forms and the API, so a name can no longer be accepted and then fail at deploy time

Version 2.9.77

ImprovementDatabases

Storage Autoscaling and Backups Keep Up With Fast Imports

A sustained bulk import used to outrun both the storage autoscaler and the backup archiver; both now scale to the load.

  • Storage autoscaling grows in 5 GiB steps by default instead of 80 GiB, so growth stays proportional to your plan
  • When usage climbs fast, the autoscaler adds enough space at once to restore a buffer and skips its cooldown at emergency utilisation
Show 3 more changes
  • PostgreSQL write-ahead log archiving got more CPU and a faster compressor, raising archive throughput up to seven times
  • Backup storage quotas for managed PostgreSQL are sized from the instance storage and grow with it, so archiving never stalls on a full backup bucket
  • A database left full while provisioning or in an error state can now recover through autoscaling as well
Read documentation (opens in a new tab)

Version 2.9.68

FeatureDatabases

Public Hostname for the PostgreSQL Connection Pooler

The transaction-mode connection pooler can now be reached from outside the platform, which is what serverless functions and short-lived workers need.

  • Enable public access for the pooler separately from the direct connection; each keeps its own hostname and ports
  • One pooler hostname serves two ports: one for the writer and one that accepts any node
Show 2 more changes
  • Pooler ports come from their own ranges, so enabling them never competes with the direct connection ports
  • The reader pooler endpoint remains internal-only
Read documentation (opens in a new tab)

Version 2.9.62

Bug fixDatabases

Database Lifecycle Fixes: Names, Stop/Start and Destroy

Several database lifecycle issues are resolved — the database you name is created, stopping no longer wedges, and a destroy is only reported done once it really is.

  • The database name you supply is now created on PostgreSQL instances
  • Stopping an instance no longer wedges, and there is a force-stop recovery path
Show 3 more changes
  • The DNS endpoint shown after a stop/start cycle is now correct
  • A destroy is reported complete only once the underlying resources are actually gone
  • We are alerted when an instance's deployment sync gets stuck, instead of it sitting silently
Read documentation (opens in a new tab)

Version 2.9.56

ImprovementDatabases

Private and Public Connection Details, Side by Side

Database and cache instances now show their internal and external connection strings separately, each with the correct port, plus superuser credentials.

  • Private (in-cluster) and public (external) endpoints are listed separately
  • Each endpoint carries its own port — the external string no longer shows the internal one
Show 3 more changes
  • Superuser credentials are available alongside the application user
  • The same split is returned by the API on database and cache resources
  • Copy the string you actually need instead of editing it by hand
Read documentation (opens in a new tab)

Version 2.9.49

FeatureDatabases

MariaDB Gains Replicas, High Availability and Scheduled Backups

New MariaDB instances run on our managed operator, bringing read replicas, HA and scheduled physical backups to MariaDB.

  • MariaDB 11.6, 11.4 and 10.11 available on the managed operator
  • Add read replicas and run MariaDB in a high-availability configuration
Show 3 more changes
  • Scheduled physical backups, with restore and fork-to-a-new-instance
  • Root superuser credentials are shown on the instance page
  • The MySQL/MariaDB deprecation notice is gone from the create page — both remain fully supported
Read documentation (opens in a new tab)

Version 2.9.43

FeatureDatabases

A Storage Tab That Shows Every Automatic Resize

Each database instance now has a Storage tab with current usage, the autoscaling policy in force, and the full history of every automatic resize.

  • New Storage tab on every database instance page
  • See current disk usage against the provisioned size at a glance
Show 3 more changes
  • Review the autoscaling policy in force — trigger threshold, growth step and ceiling
  • Full history of every automatic resize, with what triggered it and the resulting size
  • Confirm autoscaling did its job instead of inferring it from disk graphs
Read documentation (opens in a new tab)

Version 2.9.29

FeatureDatabases

Database Storage Autoscaling — Never Get Caught Out by a Full Disk

Turn on autoscaling for any managed database and we'll grow its storage automatically before it ever fills up.

  • Enable Storage Autoscaling when creating a database, or turn it on anytime from the instance's edit page
  • Set your own trigger threshold (default 80% used) and growth increment (default 80 GiB) per instance
Show 4 more changes
  • Storage grows automatically once usage crosses your threshold, with a cooldown between scale-events so it won't run away on you
  • A maximum size keeps growth within your plan and account limits — set a lower cap yourself for tighter control
  • The instance page shows autoscaling status and the projected monthly cost of the next scale-up, billed at our standard per-GiB storage rate
  • Off by default on every database — nothing changes unless you opt in
Read documentation (opens in a new tab)

Version 2.9.26

Bug fixDatabases

Fixed a Sticky Error After Schema Changes via the Connection Pooler

A schema change like adding a column, run through your PostgreSQL connection pooler, could leave it returning errors for up to an hour. That's fixed.

  • Managed PostgreSQL poolers now cap prepared statements at a safe limit on every instance
  • Running DDL (like ALTER TABLE) through the pooler endpoint no longer risks a lingering error on your app's existing connections

Version 2.9.19

ImprovementDatabases

Your Database Name, Front and Center

The name of the database we create for you now appears right next to your connection credentials.

  • The instance page now shows your ready-to-use database name in the credentials card
  • No more guessing which database to point your application at

Version 2.9.18

FeatureDatabases

Enable PostGIS in One Click

Turn a managed PostgreSQL database into a full geospatial database right from its instance page — no manual extension setup.

  • New Enable PostGIS card on the Connectivity tab of your PostgreSQL instance
  • One click sets up the PostGIS extension for geometry types, spatial indexes, and GIS functions
Show 2 more changes
  • Available on PostgreSQL 15 through 18
  • Your data and settings are preserved; single-node instances restart briefly while high-availability clusters roll with near-zero downtime
Read documentation (opens in a new tab)

Version 2.9.0

FeatureDatabases

SQL Studio — A Database GUI in Your Browser

Browse, query, and edit your managed PostgreSQL data straight from the dashboard — no client to install and no credentials to copy. SQL Studio is included free with every PostgreSQL plan.

  • Browse schemas, tables, and rows with sorting, per-column filters, and pagination
  • Edit data with a staged, transactional buffer — multi-row edits, composite keys, and NULL/DEFAULT, all applied in a single commit
Show 5 more changes
  • SQL editor with saved snippets, query history, a read-only safe mode, and CSV/JSON export
  • Create, rename, duplicate, and drop tables, bulk-delete rows, and import from CSV
  • Browse functions, triggers, views, roles, extensions, and RLS policies
  • Visualize table relationships with interactive ER diagrams
  • Queries run inside an isolated agent in your own tenant, so your credentials never leave the platform
Read documentation (opens in a new tab)

Version 2.6.1

FeatureDatabases

PostgreSQL 18 is now available

PostgreSQL 18 — with asynchronous I/O via io_uring, virtual generated columns, and native OAuth support — is now the default version when creating a new PostgreSQL instance.

  • PostgreSQL 18 (postgres:18-alpine) selectable as the default version on the database create page
  • New "PostgreSQL 18 General Purpose" parameter group enables asynchronous I/O (io_method=io_uring, io_workers=3) for lower-latency disk operations
Show 3 more changes
  • Virtual generated columns and other PostgreSQL 18 features available out of the box
  • Existing PostgreSQL 17 / 16 / 15 instances continue to run on their selected version; choose PostgreSQL 18 when creating a new instance
  • Parameter groups are now version-scoped — a PostgreSQL 17 system parameter group cannot be attached to a PostgreSQL 18 instance, and the dropdown filters to compatible groups automatically. Custom parameter groups remain compatible across versions.

Version 1.7.3

ImprovementDatabases

Parameter Groups UI & Account Deletion

A proper UI for database parameter groups and a safe account deletion flow with feedback capture.

  • Parameter Group management UI
  • Safe account deletion flow with deletion-blocker checks
Show 3 more changes
  • Email-threaded support ticket replies
  • Open support tickets directly from a storage bucket
  • Enriched code blocks in documentation pages
Read documentation (opens in a new tab)

Version 1.4.0

SecurityDatabases

SSL/TLS for All Managed Databases

End-to-end encryption on every managed database connection, with downloadable certificates for CA pinning.

  • SSL/TLS on every MySQL, MariaDB, and PostgreSQL connection
  • TLS version selection on MySQL deployments
Show 2 more changes
  • One-click certificate download (CA, client cert, client key)
  • SSL on replica connections out of the box
Read documentation (opens in a new tab)

Version 1.2.0

FeatureDatabases

Managed Databases with Read Replicas

MySQL, PostgreSQL, and MariaDB arrive as fully managed services with read replicas and parameter groups.

  • Deploy MySQL 8, PostgreSQL 15–17, and MariaDB clusters
  • Add read replicas on demand with load-balanced reader endpoints
Show 4 more changes
  • Parameter groups for custom database configuration
  • Per-provider version selection at create time
  • Multi-node metric charts for primary + replicas
  • Start/stop controls to pause billing on idle databases
Read documentation (opens in a new tab)

Get notified of updates

Subscribe to receive notifications about new features, improvements, and important updates.