| Previous | Next |
| DB_S_TOOMANYCHANGES | DB_S_NOTSINGLETON |
DB_S_STOPLIMITREACHED
OLE DB stopped at a resource limit with partial results
DB_S_STOPLIMITREACHED is HRESULT 265942 (0x00040ED6) from Microsoft OLE DB. The documented description is “Execution stopped because a resource limit was reached; Results obtained so far were returned, but execution cannot resume.” The high-order severity bit is clear, so this is a success result, but it carries more information than plain S_OK.
Execution returned results obtained so far but stopped at a provider resource limit and cannot resume from the same operation.
Where the result is encountered
- This result can appear in row fetching under provider quotas; record the producing interface and method.
- This result can appear in search or query operations with stop limits; record the producing interface and method.
- It can appear in large result sets constrained by memory or execution policy; record the producing interface and method.
State to verify
The central question is whether the partial result count is explicit and the caller does not assume continuation is available.
Evidence to preserve
- Preserve provider limit type.
- Preserve rows or results returned.
- Preserve query and parameters.
- Preserve elapsed time and memory use.
- Preserve whether a new command can continue from a stable key.
Correct handling, retry, and recovery
Use the partial results only if allowed, then redesign paging or reduce scope. A new execution may be required; do not call the same rowset expecting it to resume.
Diagnostic sequence
- Capture the raw HRESULT
0x00040ED6immediately after the returning method and record whether the caller usedSUCCEEDED,FAILED, equality testing, or exception translation. - Verify the method-specific state: the partial result count is explicit and the caller does not assume continuation is available.
Practical validation scenario
A provider stops a broad search at its resource ceiling after returning 10,000 rows. The client marks the set incomplete and reruns narrower key ranges rather than requesting another batch from the stopped rowset.
Difference from nearby HRESULT values
DB_S_ROWLIMITEXCEEDED can often continue after releasing active rows; it says this execution cannot resume.
Developer and administrator guidance
References
Looking for a different code? Search another status or error code.