In the event of your PostgreSQL running out of disk space, the service will start malfunctioning, and will also prevent backups from being properly created. 

In order to prevent this from happening, Timescale Cloud will automatically detect when your service is about to fill up and prevent further writes to it by running:

turning default_transaction_read_only  to  ON; 

At this point clients will start encountering errors like cannot execute CREATE TABLE in a read-only transaction .

At >= 97% disk usage, the platform sets 'default_transaction_read_only' to ON in - read-only mode

At <= 95% disk usage (after upgrading or freeing-up space) the platform set s'default_transaction_read_only' to OFF - read/write mode

Actions to make more space available

Upgrade to a larger plan

This can be done from the portal or with CLI client. New nodes with more disk space are launched. Once the data is on the new nodes with more disk space the disk usage will return to below the critical level and default_transaction_read_only  is set automatically to OFF by the system to allow writes again.

Delete data

You can also delete data from your database, but since your service is set in read-only mode, deletes will also be prevented. There are two ways you can work around this:

  1. You can change the transaction mode to read-write for your session by running SET default_transaction_read_only = OFF;  and then you are able to delete data from within your session.

  2. You can use REST API and send a POST request to /v1/project/<project>/service/<service_name>/enable-writes which will enable writes for the next 15 minutes, enabling you to free up space. 

Did this answer your question?