| Previous | Next |
| DB_S_COMMANDREEXECUTED | DB_S_NORESULT |
DB_S_BUFFERFULL
OLE DB completed but could not allocate a full status or string buffer
DB_S_BUFFERFULL is HRESULT 265928 (0x00040EC8) from Microsoft OLE DB. The documented description is “Operation succeeded, but status array or string buffer could not be allocated.” The high-order severity bit is clear, so this is a success result, but it carries more information than plain S_OK.
The primary operation succeeded, but the provider could not allocate all auxiliary status-array or string-buffer output.
Where the result is encountered
- This result can appear in schema or property retrieval; record the producing interface and method.
- This result can appear in diagnostic text collection; record the producing interface and method.
- It can appear in operations returning a primary result plus optional detail buffers; record the producing interface and method.
State to verify
The central question is whether the caller knows which auxiliary outputs are missing and does not present incomplete diagnostics as exhaustive.
Evidence to preserve
- Preserve requested buffer sizes.
- Preserve returned counts and null pointers.
- Preserve allocator used by provider.
- Preserve primary operation result.
- Preserve memory pressure at the time of the call.
Correct handling, retry, and recovery
Keep the primary successful result when valid, then retry only the detail retrieval with appropriate sizing or after reducing memory pressure.
Diagnostic sequence
- Capture the raw HRESULT
0x00040EC8immediately after the returning method and record whether the caller usedSUCCEEDED,FAILED, equality testing, or exception translation. - Verify the method-specific state: the caller knows which auxiliary outputs are missing and does not present incomplete diagnostics as exhaustive.
Practical validation scenario
A schema query succeeds but cannot return every descriptive string during memory pressure. The tool retains identifiers, retries descriptions in smaller batches, and marks omitted text explicitly.
Difference from nearby HRESULT values
DB_S_ERRORSRETURNED means an error array contains details; it means the provider could not allocate the full auxiliary buffer.
Developer and administrator guidance
References
Looking for a different code? Search another status or error code.