anomalyco/sst · error · VisibleError
Storage cannot be greater than 65536 GB (64 TB) for the ${na
Error message
Storage cannot be greater than 65536 GB (64 TB) for the ${name} MySQL database. What it means
SST caps MySQL RDS storage at 65536 GB (64 TB), the AWS limit for the gp2/gp3 storage range used here. Values above that throw this VisibleError during storage normalization.
Source
Thrown at platform/src/components/aws/mysql.ts:570
);
return $jsonParse(secret.secretString).apply(
(v) => v.password as string,
);
});
return { instance, proxy, password };
}
function normalizeStorage() {
return output(args.storage ?? "20 GB").apply((v) => {
const size = toGBs(v);
if (size < 20) {
throw new VisibleError(
`Storage must be at least 20 GB for the ${name} MySQL database.`,
);
}
if (size > 65536) {
throw new VisibleError(
`Storage cannot be greater than 65536 GB (64 TB) for the ${name} MySQL database.`,
);
}
return size;
});
}
function normalizeVpc() {
// "vpc" is a Vpc.v1 component
if (args.vpc instanceof VpcV1) {
throw new VisibleError(
`You are using the "Vpc.v1" component. Please migrate to the latest "Vpc" component.`,
);
}
// "vpc" is a Vpc component
if (args.vpc instanceof Vpc) {
return {View on GitHub (pinned to a0bd20f762)
Solutions
- Reduce the storage argument to 65536 GB (64 TB) or less
- Let RDS storage autoscaling grow the volume instead of pre-allocating the max
- If you truly need more, use a different datastore (e.g. Aurora with its own limits) or shard across instances
Example fix
// before
new sst.aws.MySql("MyDb", { storage: "70000 GB" });
// after
new sst.aws.MySql("MyDb", { storage: "65536 GB" }); Defensive patterns
Strategy: validation
Validate before calling
const gb = toGBs(args.storage ?? "20 GB");
if (gb > 65536) throw new Error(`MySQL storage must be <= 65536 GB, got ${gb} GB`); Prevention
- Clamp storage to 65536 GB in config generation
- Use RDS storage autoscaling rather than pre-allocating huge volumes
- Cross-check limits against AWS docs for the storage type in use
- Centralize RDS sizing constants in shared config
When it happens
Trigger: new sst.aws.MySql("MyDb", { storage: "70000 GB" }) or any storage expression converting to more than 65536 GB.
Common situations: Trying to provision a very large warehouse-style database on RDS MySQL; mis-specified units (e.g. "70000 GB" meant to be MB or a different limit from another provider).
Related errors
- Storage must be at least 20 GB for the ${name} MySQL databas
- Lifecycle rule at index ${index} has an empty or whitespace-
- The DNS record "${partial.name}" cannot be created because t
- Unsupported storage: ${v}. The supported value for storage i
- type === "service" ? `You cannot provide both "containers" a
AI-assisted analysis of anomalyco/sst@a0bd20f762 (2026-08-30).
Data as JSON: /api/errors/3c2b0198e1b1b7a0.
Report an issue: GitHub.