| Previous | Next |
| MD_E_BADTUPLE | MD_E_INVALIDAXIS |
MD_E_BADCOORDINATE
Meaning
Windows documents MD_E_BADCOORDINATE as “Coordinate is invalid”. In this case, a cell or dataset operation receives a multidimensional coordinate that is invalid for the current axes.
Relevant contract
OLE DB for OLAP models axes, tuples, coordinates and cells separately. A tuple identifies one member from each relevant hierarchy, a coordinate positions a cell across axes, and cell ordinals are valid only for the current dataset shape.
Investigation of this result should start with the dataset object, axis metadata, tuple construction and cellset generation used by the failing call.
Diagnostic sequence
- Identify the exact failing stage: a cell or dataset operation receives a multidimensional coordinate that is invalid for the current axes.
Conditions that specifically lead to it
- Cause 1: the coordinate omits or adds an axis component.
- Cause 2: one tuple in the coordinate is invalid.
- Cause 3: coordinates were built for a prior dataset shape.
Evidence to collect
When recording diagnostic data involving member unique names, cube coordinates and calculated-measure expressions, use types, lengths, hashes or redacted identifiers rather than secrets or complete business data.
- Evidence 1: axis count and cardinality.
- Evidence 2: the tuple supplied for each axis.
- Evidence 3: dataset generation and query that produced the axes.
Corrective actions
- Action 1: derive coordinates from the current axis collection.
- Action 2: validate every tuple before composing the coordinate.
- Action 3: discard coordinate caches when the dataset is reexecuted.
Retry and recovery
Retry rule: retry after reconstructing the coordinate against the current dataset axes.
Do not turn it into an unbounded retry loop. Preserve cancellation and use a fresh provider object when the failed call may have left local state ambiguous.
Difference from nearby HRESULT values
MD_E_BADTUPLE concerns an invalid tuple, while MD_E_BADCOORDINATE concerns the combined placement of tuples across axes.
Practical scenario
A pivot UI reuses coordinates after a slicer changes axis shape; recalculation prevents it. Keeping it with the method and object state makes this scenario diagnosable instead of reducing it to “database error”.
Operational dashboards should group by provider version, interface, method and normalized failure stage. A telemetry event must not expose passwords, tokens, full connection strings, unrestricted command text or raw row contents.
Official Microsoft references
Looking for a different code? Search another status or error code.
