What does HRESULT 0x8800022F (hrExistingLogFileIsNotContiguous) mean?

 
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 layerthe relationship between pre-existing target logs and the restore log lineage
Relevant API surfacehard recovery, restore target paths, log generation validation, and checkpoint processing
Code-specific conditionthe log sequence already present in the target path contains a generation gap required by recovery
Narrow corrective directionsupply 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:

hrExistingLogFileHasBadSignaturea log already present in the target log path belongs to a different log sequence or has an unreadable signature
hrRestoreLogTooLowthe configured upper or ending restore generation is below a log that the restore set requires
hrInvalidLogSequencethe next log does not continue the expected sequence identity or timestamp chain

Next actions

  1. Record it, 0x8800022F, the API name, the current phase, and all live context or file owners.
  2. Verify the condition by enumerating generations in the target path and compare them with the checkpoint and the requested restore range.
  3. 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


Looking for a different code? Search another status or error code.