What does Windows error code 800 (ERROR_OPLOCK_SWITCHED_TO_NEW_HANDLE) mean?

 
Previous Next
ERROR_ORPHAN_NAME_EXHAUSTED ERROR_CANNOT_GRANT_REQUESTED_OPLOCK

ERROR_OPLOCK_SWITCHED_TO_NEW_HANDLE

The oplock is now owned through a different handle

This completion status means that the oplock previously associated with the monitored handle has been transferred to another handle. Windows documents it as extended completion information for an oplock request. The original handle should no longer be treated as the authoritative place to receive or acknowledge future oplock state changes.

Applications that coordinate atomic open-with-oplock, handle duplication, or internal replacement handles must update their ownership records when this status appears. Retaining the old handle in a cache manager can lead to missed break notifications or invalid acknowledgments. Correlate the completion with the replacement handle creation, preserve the file identity being protected, and ensure that cleanup closes the actual owning handle rather than only the obsolete one.

What to inspect

  • Update the handle stored in the oplock state object.
  • Correlate the transition with handle creation or replacement events.
  • Send later acknowledgments only through the new owning handle.

References


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