| Previous | Next |
| OR_INVALID_OID | RPC_S_SEND_INCOMPLETE |
OR_INVALID_SET
The DCOM object resolver set is no longer valid.
OR_INVALID_SET is Win32 status 1912 (0x778). The DCOM object resolver maintains set-oriented state used for groups of object identifiers and distributed lifetime management. This low-level status means a supplied set identifier does not map to a current resolver set. Most application code sees it through COM or RPC infrastructure rather than calling an object-resolver set API directly.
Why resolver set state disappears
- the client or server process restarted and lost the set created during an earlier lifetime
- a cleanup or rundown path deleted the set before a later update arrived
- messages were delayed or reordered across a network interruption
- custom protocol code reused an identifier after its owning resolver session ended
- corrupted marshaled or RPC data supplied a value that was never allocated on that resolver
Lifetime data to preserve
Record client and server process start times, connection and activation correlation, the operation preceding 1912, network interruption windows, DCOM/RPC event logs, service restarts, and protected resolver identifiers. Capture packet traces only under an approved security procedure because DCOM traffic and endpoint data can reveal internal topology and credentials metadata.
How to isolate the lifecycle break
Check for restarts, failover, suspend/resume, and long connectivity gaps around the first occurrence. Determine whether new COM activations succeed while an older group of proxies fails. That pattern indicates stale resolver lifetime state rather than a system-wide endpoint problem.
If the application implements custom marshaling or RPC integration, verify ownership and sequencing of set creation, updates, and deletion. Ensure callbacks or delayed work cannot submit updates after teardown. Do not manufacture or increment set IDs locally; they are scoped to resolver state.
Recovery and engineering response
Discard proxies associated with the invalid resolver lifetime and reacquire them through normal activation. Rebuild application sessions at a safe boundary and make retries aware of possible partial execution before the lifetime failure.
Treat repeated 1912 without process or network transitions as evidence for a lifecycle bug or data corruption. Add generation numbers and cancellation barriers around asynchronous work so old resolver state cannot be used after reconnect or shutdown.
Difference from missing OXID and OID entries
OR_INVALID_OXID identifies a missing object exporter, and OR_INVALID_OID identifies a missing exported object. Error 1912 concerns the resolver’s set-level state used to manage collections or lifetime operations.
Example
A broker suspends during a network change, reconnects, and sends delayed lifetime updates from its previous DCOM session. The server returns 1912 because that resolver set was discarded. Canceling old queued updates and rebuilding proxies after reconnect prevents recurrence.
References
- Microsoft: System Error Codes (1700–3999)
- Microsoft: Win32 Error Codes in MS-ERREF
- Microsoft: DCOM Object Resolver Service
- Microsoft: Marshaling a DCOM object reference
Looking for a different code? Search another status or error code.
