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:
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.
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:
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.
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.