| Previous | Next |
| hrBadColumnId | hrCannotBeTagged |
hrBadItagSequence
Locate the failure in the Jet call chain
hrBadItagSequence means the requested multivalued-column instance number is invalid for the current row.
This is the legacy Directory Service backup/restore HRESULT form of JET_errBadItagSequence (0xC80005EE).
The key comparison is: hrTaggedNotNULL concerns tagged null semantics; this code is about selecting a particular value instance. The first useful observation is to record itagSequence, existing value count, retrieval/set grbits, and concurrent row changes. This evidence separates schema definition, row-size accounting, null semantics, multivalue selection, and stale column IDs.
The ESE objects in play
| Diagnostic layer | column schema, row-size accounting, tagged/multivalued storage, and column identifiers |
|---|---|
| Typical API surface | JetAddColumn, JetDeleteColumn, JetSetColumn, JetRetrieveColumn, and JET_COLUMNDEF |
| Code-specific condition | the requested multivalued-column instance number is invalid for the current row |
| First corrective direction | enumerate current instances and apply insertion/replacement/deletion rules with checked indices |
Null, zero-length, deletion, and missing multivalue instances are distinct states. Fixed, variable, tagged, and long-value columns consume row space differently.
Questions the logs must answer
- Code-specific observation: record itagSequence, existing value count, retrieval/set grbits, and concurrent row changes.
- the complete row-size contribution from fixed, variable, tagged, and long-value data; associate it with this result rather than with a later generic exception.
- JET_COLUMNDEF fields, flags, code page, maximum length, and column ID origin.
- the encoded value length, null/empty state, and itag sequence.
Response and verification
- Freeze the failing request context and record
0xC80005EE, the Jet API name, and the current instance/session ownership. - Verify the code-specific precondition: record itagSequence, existing value count, retrieval/set grbits, and concurrent row changes.
- Apply the targeted fix: enumerate current instances and apply insertion/replacement/deletion rules with checked indices.
- Before retrying the operation, reconcile column metadata, row layout, and the exact stored value state.
Distinguishing signals
hrBadColumnId | the numeric JET_COLUMNID is invalid for the current table schema |
|---|---|
hrCannotBeTagged | an autoincrement or version column was defined with tagged or multivalued semantics |
hrTooManyColumns | a table definition has reached the supported number of columns |
Actions that can hide or worsen the problem
- Do not alter the column schema in place without a migration and rollback plan.
- Do not collapse null, zero-length data, missing value, and tagged-value deletion into one state.
Technical references
Looking for a different code? Search another status or error code.