| Previous | Next |
| hrExistingLogFileHasBadSignature | hrColumnNull |
hrExistingLogFileIsNotContiguous
State represented by this code
hrExistingLogFileIsNotContiguous means the log sequence already present in the target path contains a generation gap required by recovery.
The stored value is 0x8800022F (positive JET status 559; 559). The HRESULT carries a warning, so the call may have useful output or a valid cursor state that must be inspected. Current ESE documentation uses JET_wrnExistingLogFileIsNotContiguous for the corresponding published JET condition.
The first useful distinction is that this concerns the existing target sequence, whereas hrGivenLogFileIsNotContiguous concerns the logs supplied from backup media. Start by enumerating generations in the target path and compare them with the checkpoint and the requested restore range.
Data for a reproducible incident
- Code-specific observation: enumerate generations in the target path and compare them with the checkpoint and the requested restore range.
Objects and state involved
| Diagnostic layer | the relationship between pre-existing target logs and the restore log lineage |
|---|---|
| Relevant API surface | hard recovery, restore target paths, log generation validation, and checkpoint processing |
| Code-specific condition | the log sequence already present in the target path contains a generation gap required by recovery |
| Narrow corrective direction | supply the missing generation from the same sequence or restart with a clean target directory and a complete lineage |
Every log generation carries sequence identity in addition to its filename. Warnings about existing target logs identify a collision that should be resolved before normal service resumes.
Actions that can make diagnosis worse
- Do not overwrite the conflicting files before preserving evidence.
- Do not mix logs from different backups because names appear contiguous.
Nearby ESE or AD backup states
It specifically means that this concerns the existing target sequence, whereas hrGivenLogFileIsNotContiguous concerns the logs supplied from backup media. Related values below can appear in the same workflow but require a different response:
hrExistingLogFileHasBadSignature | a log already present in the target log path belongs to a different log sequence or has an unreadable signature |
|---|---|
hrRestoreLogTooLow | the configured upper or ending restore generation is below a log that the restore set requires |
hrInvalidLogSequence | the next log does not continue the expected sequence identity or timestamp chain |
Next actions
- Record it,
0x8800022F, the API name, the current phase, and all live context or file owners. - Verify the condition by enumerating generations in the target path and compare them with the checkpoint and the requested restore range.
- Apply only the targeted fix: supply the missing generation from the same sequence or restart with a clean target directory and a complete lineage.
Acceptance criteria for a fix
A useful regression test should force the condition “the log sequence already present in the target path contains a generation gap required by recovery”, call one documented API transition, and assert the exact HRESULT.
Technical references
- JetExternalRestore phases and ranges — API ordering, file semantics, warning/error interpretation, or recovery behavior relevant to this HRESULT.
- ESE files and checkpoint behavior
- ESE error-code table
- Microsoft JET_ERR enumeration
Looking for a different code? Search another status or error code.