| Previous | Next |
| ERROR_CANNOT_BREAK_OPLOCK | ERROR_NO_ACE_CONDITION |
ERROR_OPLOCK_HANDLE_CLOSED
Closing the owning handle ended the oplock
An oplock is attached to a particular file handle. When that handle closes, Windows completes the pending oplock request with this status and removes the caching agreement. Unlike an ordinary break caused by a competing operation, a close-induced completion does not require the application to acknowledge the break.
The important diagnostic question is whether the close was intentional. Normal shutdown and cache eviction can produce this status harmlessly. Unexpected occurrences point to premature cleanup, cancellation, handle reuse, or a race between an I/O completion path and an object destructor. Stop treating cached data as protected as soon as the completion is observed, and ensure that no later code sends a break acknowledgment on the closed handle.
What to inspect
- Correlate the completion with CloseHandle and cancellation events.
- Invalidate cache rights associated with the closed handle.
- Skip break acknowledgment for a close-induced completion.
References
- Microsoft: opportunistic lock operations
- Microsoft: oplock types and break behavior
- Microsoft: FSCTL_REQUEST_OPLOCK
Looking for a different code? Search another status or error code.