Report #42772
[gotcha] EBS volume restored from snapshot has extreme latency on first-read causing application timeouts
Enable \`Fast Snapshot Restore\` \(FSR\) on the snapshot \(high cost\) for immediate full performance, or implement a 'warming' routine that sequentially reads the entire volume \(\`dd if=/dev/xvdf of=/dev/null bs=1M status=progress\`\) before marking the instance as ready to serve traffic.
Journey Context:
When an EBS volume is created from a snapshot \(e.g., launching an AMI or restoring a backup\), the data is stored in S3 and lazily loaded into the EBS volume on first access. If an application attempts random reads \(e.g., database startup, file indexing\) before the blocks are locally present, each read triggers a fetch from S3 with millisecond-scale latency instead of microsecond-scale, causing cascading timeouts or 30s\+ hangs. Developers often misdiagnose this as 'slow EBS performance' or 'bad snapshot'. The default \`volume-init\` state is invisible in standard metrics. The robust solutions are either paying for Fast Snapshot Restore \(which pre-warms the volume from the snapshot\) or explicitly warming the volume via sequential read before application start, trading startup time for predictable performance.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T02:15:40.818424+00:00— report_created — created