| Previous | Next |
| hrBackupInProgress | hrLogWriteFail |
hrMissingPreviousLogFile
State represented by this code
hrMissingPreviousLogFile means the checkpoint requires an earlier log generation that is absent from the available sequence.
The stored value is 0xC80001FD (negative JET error -509; -509). Current ESE documentation uses JET_errMissingPreviousLogFile for the corresponding published JET condition.
The first useful distinction is that hrMissingLogFile normally identifies the current log; this result ties the gap to checkpoint-based recovery. Start by reading the checkpoint generation, list every log generation and signature, and record any manual deletion or failed truncation.
Data for a reproducible incident
- Code-specific observation: read the checkpoint generation, list every log generation and signature, and record any manual deletion or failed truncation.
Objects and state involved
| Diagnostic layer | checkpoint position and the continuous transaction-log generation sequence |
|---|---|
| Relevant API surface | JetInit recovery, hard restore ranges, checkpoint processing, and log enumeration |
| Code-specific condition | the checkpoint requires an earlier log generation that is absent from the available sequence |
| Narrow corrective direction | restore the exact missing generation from the same lineage or rebuild from a complete backup set |
The checkpoint identifies the oldest log work not yet fully represented in database pages. Recovery requires every mandatory generation in order and from one signature lineage.
Actions that can make diagnosis worse
- Do not join gaps with logs from a different server or backup lineage.
- Do not create an empty replacement log.
Nearby ESE or AD backup states
It specifically means that hrMissingLogFile normally identifies the current log; it ties the gap to checkpoint-based recovery. Related values below can appear in the same workflow but require a different response:
hrLogSequenceEnd | the legacy log generation namespace reached its maximum value |
|---|---|
hrInvalidLogSequence | the next log does not continue the expected sequence identity or timestamp chain |
hrMissingLogFile | the active or current transaction log expected by the instance is absent |
Next actions
- Record it,
0xC80001FD, the API name, the current phase, and all live context or file owners. - Verify the condition by reading the checkpoint generation, list every log generation and signature, and record any manual deletion or failed truncation.
- Apply only the targeted fix: restore the exact missing generation from the same lineage or rebuild from a complete backup set.
Acceptance criteria for a fix
A useful regression test should force the condition “the checkpoint requires an earlier log generation that is absent from the available sequence”, call one documented API transition, and assert the exact HRESULT.
Technical references
- ESE checkpoint and log files — API ordering, file semantics, warning/error interpretation, or recovery behavior relevant to this HRESULT.
- Transaction-log parameters
- JetExternalRestore phases
- Microsoft JET_ERR enumeration
Looking for a different code? Search another status or error code.
