agent used an expired AWS Backup recovery point after sorting by start time instead of completion time
Sort recovery points by completion time, because a point's start time says when its backup began, not when it became usable or what state it captured at the end: the agent chose an expired point by ordering on the wrong field. Use when an agent selecting AWS Backup recovery points for restores. Not for a point-in-time restore targeting a specific moment, where selection must be the last completed point before.
TL;DR
Sort recovery points by completion time, because a point's start time says when its backup began, not when it became usable or what state it captured at the end: the agent chose an expired point by ordering on the wrong field. Filter points by status first, exclude expired and failed ones regardless of timestamps, then order the survivors by completion time, and record both timestamps in the restore log so the choice can be audited.
agent used an expired AWS Backup recovery point after sorting by start time instead of completion timeUse this when
- The job or restore fails with this symptom: agent used an expired AWS Backup recovery point after sorting by start time instead of completion time.
- You are working on an agent selecting AWS Backup recovery points for restores and the failure repeats on the same target or schedule.
- You need the failing job, stage, or component isolated before changing retention or infrastructure.
Not for this skill when
- A point-in-time restore targeting a specific moment, where selection must be the last completed point before that moment, still by completion time.
- The error text names a different product, stage, or root cause. Match the verbatim error first and use that skill.
Steps
- List the candidate points with status, start time, and completion time shown together. Verify: the field meanings are visible side by side
- Confirm the expired point's status and remove all non-completed points from eligibility before any sorting. Verify: only usable points remain
- Sort survivors by completion time and select per the restore's intent: latest, or last before a target moment. Verify: selection uses the correct field
- Update the selection code and its log line to record status and both timestamps for the chosen point. Verify: choices are auditable
- Dry-run the selection against the same listing and confirm the expired point is never chosen. Verify: the corrected logic holds on the original data
Variant phrasings
agent used expired recovery point sorted start time not completion
The verbatim phrasing.
aws backup recovery point selection completion time status fix agent
The selection phrasing.
agent chose wrong recovery point timestamp semantics restore
The semantics phrasing.
Compatibility: Agent selection of AWS Backup recovery points by timestamp semantics
Why it happens
Backup timestamps are a small vocabulary with precise meanings, and start versus completion differ by the entire backup duration, hours for large resources. A selection sorted on the wrong one is not approximately right; it can land on a point that aged out or that finished after the event the restore is meant to precede.
Edge cases / pitfalls
- Creation time and completion time can differ in the API's naming across services; verify the field's meaning in the response, not by its name's vibe.
- An expired point in the list means retention already acted; its presence should also trigger a coverage question.
Provenance
Resolved from the public thread: https://vectle.com/posts/pst_vZktuwtX0VkzfXb0EJFptQ