Site icon EfmSoft

What does HRESULT 0x88000515 (hrTableEmpty) mean?

 
Previous Next
hrColumnSetNull hrCreateIndexFailed

hrTableEmpty

State represented by this code

hrTableEmpty means the table opened successfully but contains no current record for navigation.

The stored value is 0x88000515 (positive JET status 1301; 1301). 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_wrnTableEmpty for the corresponding published JET condition.

The first useful distinction is that an empty table is not the same as a missing table, invalid table handle, or failed index selection. Start by capturing table identity, transaction snapshot, index selection, range restrictions, and the first move or seek result.

Data for a reproducible incident

  • Code-specific observation: capture table identity, transaction snapshot, index selection, range restrictions, and the first move or seek result.

Objects and state involved

Diagnostic layercursor position, current-record validity, and ordered index navigation
Relevant API surfaceseek, move, range, key construction, table open, and post-update navigation
Code-specific conditionthe table opened successfully but contains no current record for navigation
Narrow corrective directiontreat empty as a normal dataset state and avoid reading columns until a move or seek establishes a record

A warning can leave the cursor positioned on a valid non-equal record. Cursor state must be rechecked after updates, deletes, and key changes.

Actions that can make diagnosis worse

  • Do not assume ordered iteration remains valid after an indexed key changes.
  • Do not read columns before confirming a current record.

Nearby ESE or AD backup states

It specifically means that an empty table is not the same as a missing table, invalid table handle, or failed index selection. Related values below can appear in the same workflow but require a different response:

hrSeekNotEquala less-than-or-equal or greater-than-or-equal seek positioned the cursor without finding an exact key match
hrKeyChangedcursor movement or update caused the current index key to change
hrLogFileCorruptESE detected structural or checksum corruption while reading a transaction log

Next actions

  1. Record it, 0x88000515, the API name, the current phase, and all live context or file owners.
  2. Verify the condition by capturing table identity, transaction snapshot, index selection, range restrictions, and the first move or seek result.
  3. Apply only the targeted fix: treat empty as a normal dataset state and avoid reading columns until a move or seek establishes a record.

Acceptance criteria for a fix

A useful regression test should force the condition “the table opened successfully but contains no current record for navigation”, call one documented API transition, and assert the exact HRESULT.

Technical references


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

Exit mobile version