What does HRESULT 0x00030201 (STG_S_BLOCK) mean?

 
Previous Next
STG_S_CONVERTED STG_S_RETRYNOW

STG_S_BLOCK

Back-pressure from asynchronous storage

This success status belongs to COM asynchronous structured storage. An IProgressNotify sink can return it to request blocking when a read reaches data that has not yet been supplied through IFillLockBytes. It is a control result, not evidence of a corrupt compound file.

The wait must be tied to progress in the producer. Sleeping for an arbitrary interval without arranging a wake-up can deadlock the consumer or add unnecessary latency.

Correct handling

  • Keep the storage operation and its asynchronous byte source alive while blocked.
  • Wake when new ranges are filled, the download terminates, or cancellation occurs.
  • Do not translate this qualified success into a permanent I/O error.
  • Log the requested byte range and the highest contiguous range currently available.

References

IProgressNotify::OnProgress · IFillLockBytes · Microsoft COM storage HRESULTs


Looking for a different code? Search another status or error code.