Does this site look plain?

This site uses advanced css techniques

ERROR: Something's broken but we don't wish to elaborate

If you received the error message "Not enough storage is available to complete this operation", the first thing you'd check would be your hard drive, right? But that's a red herring: this message is about other resources, such as memory or file handles or the like. It's not about disk space.

This has sent many down the wrong road while troubleshooting an issue, and it's made a lot worse by error messages being maddeningly similar. Example: these messages refer to four different error conditions:

This is redolent of the old D&D games, replete with mazes of twisty passages, all alike.

The definitive source for what these codes are defined as is the WINERROR.H file as part of the Microsoft Windows SDK, so I went through it looking for all the items that referred to "not enough", listing the in this table, augmented with comments when I could find something useful.

Number Code Message Comments
8 ERROR_NOT_ENOUGH_MEMORY Not enough storage is available to process this command. When running out of memory explicitly, such as via LocalAlloc, or on CreateThread if there are too many threads, or RegisterWindowMessage or GlobalAddAtom
14 ERROR_OUTOFMEMORY Not enough storage is available to complete this operation. Running out of indirect non-disk resources (file HANDLEs, etc)
112 ERROR_DISK_FULL There is not enough space on the disk. This is the one about disk space
147 ERROR_IS_JOIN_PATH Not enough resources are available to process this command. No idea what this is about
639 ERROR_INSUFFICIENT_POWER There is not enough power to complete the requested operation. Probably related to USB
1130 ERROR_NOT_ENOUGH_SERVER_MEMORY Not enough server storage is available to process this command. Probably related to RPC calls over the network
1721 RPC_S_OUT_OF_RESOURCES Not enough resources are available to complete this operation. A Remote Procedure Call error: MSFT
1816 ERROR_NOT_ENOUGH_QUOTA Not enough quota is available to process this command. Perhaps related to disk quotas, but also can be caused by other things: KB185292
0x80090300 SEC_E_INSUFFICIENT_MEMORY Not enough memory is available to complete this request Related to the Authentication/Security subsystem
0x80100006 SCARD_E_NO_MEMORY Not enough memory available to complete this command. Related to SmartCard readers
0xC0262100 ERROR_GRAPHICS_NO_VIDEO_MEMORY Not enough video memory available to complete the operation. Related to Windows Graphics Kernel Subsystem
0x80290105 TPMAPI_E_OUT_OF_MEMORY Not enough memory was available to satisfy the request. Related to the Trusted Platform Module (security)
0x8029020C TBSIMP_E_OUT_OF_MEMORY There was not enough memory to fulfill the request Related to the Trusted Platform Module (security)
0x80300070 PLA_E_NO_MIN_DISK Not enough free disk space to start Data Collector Set. Related to Facility Performance Logs & Alerts
0xC035000B ERROR_HV_INSUFFICIENT_MEMORY There is not enough memory in the hypervisor pool to complete the operation. Related to Hyper-V
0xC0350013 ERROR_HV_INSUFFICIENT_BUFFERS Not enough buffers were supplied to send a message. Related to Hyper-V
0xC035001D ERROR_HV_NO_RESOURCES There are not enough resources to complete the operation. Related to Hyper-V
0xC0380013 ERROR_VOLMGR_DISK_NOT_ENOUGH_SPACE There is not enough usable space for this operation. Volume Manager (COM error)

This suggests two things:

  1. If you get an error message, write it down exactly, as the gist is insufficient.
  2. If you're a developer, always include the error number along with the message, as that's the unambiguous part.

Blogged here.

First published: 2013/03/05