appsmithorg/appsmith · critical · Error
Not enough space available at /appsmith-stacks. Please ensur
Error message
Not enough space available at /appsmith-stacks. Please ensure availability of at least 2GB to backup successfully.
What it means
Thrown by checkAvailableBackupSpace() in the Appsmith RTS backup controller. getAvailableBackupSpaceInBytes() calls fsPromises.statfs(path) and returns bsize*bfree (free bytes). checkAvailableBackupSpace() compares that to Constants.MIN_REQUIRED_DISK_SPACE_IN_BYTES (the message states 2GB) and throws if free space is below the floor, halting the backup before it can produce a truncated archive.
Source
Thrown at app/client/packages/rts/src/ctl/backup/links/DiskSpaceLink.ts:27
async preBackup() {
const availSpaceInBytes: number =
await getAvailableBackupSpaceInBytes("/appsmith-stacks");
checkAvailableBackupSpace(availSpaceInBytes);
}
}
export async function getAvailableBackupSpaceInBytes(
path: string,
): Promise<number> {
const stat = await fsPromises.statfs(path);
return stat.bsize * stat.bfree;
}
export function checkAvailableBackupSpace(availSpaceInBytes: number) {
if (availSpaceInBytes < Constants.MIN_REQUIRED_DISK_SPACE_IN_BYTES) {
throw new Error(
"Not enough space available at /appsmith-stacks. Please ensure availability of at least 2GB to backup successfully.",
);
}
}
View on GitHub (pinned to 8cd9021c24)
Solutions
- Free space at /appsmith-stacks: remove old backup archives and rotated logs ('docker exec appsmith du -sh /appsmith-stacks/*').
- Expand the underlying volume or move /appsmith-stacks to a larger mount and update the bind-mount.
- Prune docker images/containers if the stack shares the host filesystem ('docker system prune').
- Re-run the backup after confirming free bytes >= 2GB (e.g. 'df -h /appsmith-stacks').
Example fix
# before $ df -h /appsmith-stacks # Avail 900M -> backup throws # after $ rm /appsmith-stacks/data/backup/appsmith-backup-*.tar.gz.enc # old archives $ docker system prune -f $ df -h /appsmith-stacks # Avail 5G # re-run: appsmith backup create
Defensive patterns
Strategy: validation
Validate before calling
import { statfs } from 'fs/promises';
async function hasEnoughSpace(p: string, minBytes = 2 * 1024 ** 3) {
const s = await statfs(p);
return s.bsize * s.bfree >= minBytes;
} Try / catch
try { await runBackup(); } catch (e) {
if (/Not enough space/i.test(e.message)) { await freeSpace('/appsmith-stacks'); await runBackup(); }
else throw e;
} Prevention
- Pre-check free space before starting a backup.
- Schedule archival cleanup so /appsmith-stacks stays above 2GB headroom.
- Monitor volume usage and alert before it approaches the floor.
When it happens
Trigger: Running an Appsmith instance backup (appsmith backup create via the ctl) on a host/volume where the free space at /appsmith-stacks is under ~2GB. statfs reports bfree blocks and the product is below the constant.
Common situations: Small Docker volumes or overlay filesystems near capacity; /appsmith-stacks on a partitioned disk with a small mounted volume; logs/snapshots having filled the volume; running backup on a replica whose data dir shares a thin EBS volume.
Related errors
- Backup process aborted because a valid encryption password c
- Could not find the contents of the backup archive.
- Database URL not found. Please check APPSMITH_DB_URL or APPS
- Redis URL not found. Please check APPSMITH_REDIS_URL configu
- Organization with slug 'default' not found in database
AI-assisted analysis of appsmithorg/appsmith@8cd9021c24 (2026-08-12).
Data as JSON: /api/errors/6c9bae5694aa246e.
Report an issue: GitHub.