backupd
Troubleshooting

Backup failures

What backupd error messages mean when a backup, restore test, copy or restore fails, and how to fix them.

A failed backup shows its error on the backup's page and in the Backup failed alert. Errors that may fix themselves are retried first. While a backup waits to retry, its message starts with Retrying:. For connection errors, see Connection errors.

Plan and storage

This workspace has no active plan

The full message is This workspace has no active plan. Start the 14-day Starter trial or subscribe in Settings → Billing to resume backups. Backups only run on a plan in good standing. See Trial, changes and cancelling.

Spending cap reached

Extra storage reached your spending cap, so new backups are paused. Raise or remove the cap in Settings → Billing, or free up space. See Extra storage and spending cap.

Starter allows 12 manual backups per database per day

You've used the day's manual backups for this database. The count is over a rolling 24 hours. Scheduled backups are not affected.

A backup of production is already running

Only one backup of a database runs at a time. Wait for it to finish, or cancel it.

A backup of production is already queued

A backup of this database is already waiting to start, for example a scheduled one. It covers your request.

Size and time

The backup ran longer than this plan's 3 h limit

A backup can run for 3 hours on Starter and 6 hours on Pro. Upgrade, or contact us about a Custom plan for very large databases.

The backup is larger than this plan's 50 GB per-backup limit

The stored, compressed backup grew past your plan's largest backup: 50 GB on Starter, 100 GB on Pro.

This database (~… GB) won't fit in the … GB this backup may use

backupd estimated before starting that the database is too large for your plan's largest backup, and didn't start the dump.

No data from the database for 300s

The dump sent nothing for 5 minutes, often because it was waiting on a lock. backupd stops it rather than keep a snapshot open on your database, and retries.

A table was locked by a schema change; the backup will retry

PostgreSQL. A migration held a lock the dump needed. The backup is retried. If it keeps happening, schedule backups away from deploys.

The database was busy; the backup will retry

MySQL. A lock wait timeout or deadlock. The backup is retried.

Dump errors

The dump is truncated (no mysqldump completion marker)

mysqldump stopped before finishing, often because the connection dropped. The backup is retried.

Not a pg_dump custom-format archive

The integrity check found the stored file isn't a valid archive. The backup is not counted as good. Run Backup now to make a new one, and contact support@backupd.dev if it happens again.

Restore tests

Restore failed

The restore test couldn't restore the backup, or some tables came back with fewer rows than were dumped. The backup's page lists each table that came back short, with both counts. Click Re-run restore test to try again. Keep an older verified backup until it passes. See Integrity checks and restore tests.

Copies to your bucket

Copy to destination failed

backupd couldn't copy a backup to one of your buckets, after retrying. Check that the bucket still exists and the keys still have read, write and list access under the prefix. If the keys changed, remove the destination and add it again with the new keys, using Test connection to check them. The backup itself is safe in backupd Storage.

Restores

The target already has … Turn on "Replace existing tables" to overwrite them

MySQL. The target database already has some of the backup's tables. Tick Replace tables that already exist in the target, or restore into an empty database.

Convex backups restore into their own deployment only

In-app Convex restores can only go back to the original deployment. To restore elsewhere, download the backup and use npx convex import.

A restore of this backup is already running

Wait for the running restore to finish.

The restore ran too long

The restore ran past your plan's longest run. Restore it yourself instead, see Restore without backupd.

On this page