| Previous | Next |
| ERROR_FULL_BACKUP | ERROR_RPL_NOT_ALLOWED |
ERROR_REC_NON_EXISTENT
The name does not exist in the WINS database.
ERROR_REC_NON_EXISTENT is Win32 error 4005 (0xFA5) and belongs to WINS database record lookup. The system description identifies the immediate condition but does not identify the caller, object, policy, device, service instance, or transition that produced it.
Interpret this result at the API boundary that returned it. Capture it before logging, cleanup, or another Windows call can replace the thread-local last-error value. Compare the recorded inputs with the documented precondition for WINS database record lookup rather than starting with a broad system repair.
Where the result appears
- This result can surface during querying or deleting a static WINS record.
- This result can surface during editing a NetBIOS name through a management interface.
- It can surface during replication diagnostics comparing records.
- It can surface during automation acting on a record discovered earlier.
Likely causes
- the named record was deleted or scavenged before the operation.
- the query used the wrong NetBIOS suffix or record type.
- the management view is stale relative to the WINS database.
- the request was sent to a different WINS server than the one containing the record.
Diagnostic sequence
Diagnosis of it starts with the exact request type: read, write, create, transition, validation, cancellation, or administrative action. Identify the object generation and subsystem owner, then decide whether the failure happened before side effects, during a partial transition, or after completion. This ordering matters in WINS database record lookup because a blind retry can hide stale state or repeat a non-idempotent change.
- record full 16-byte NetBIOS name including suffix.
- record record type, owner server, and version identifier.
- record target WINS server and replication state.
- record time of the earlier enumeration.
- record scavenging, tombstone, and deletion events.
Correlate it with the owning component’s operational log, the Windows System log, and any subsystem trace. Telemetry for this Win32 error should preserve native identifiers such as a path or file ID, handle generation, node or peer identity, policy ID, object version, offset and length, or transaction token. Retain decimal 4005, hexadecimal 0xFA5, and the producing API even when a localized message is also shown.
State boundary to prove
The decisive boundary for this Win32 error is whether the named record was deleted or scavenged before the operation. Prove or disprove that proposition using full 16-byte NetBIOS name including suffix together with record type, owner server, and version identifier. When observations for this Win32 error disagree, preserve both and inspect the transition between them instead of choosing the more convenient value.
A focused validation for this Win32 error should recreate the relevant part of this situation: a console lists a record, replication removes it, and a later delete returns 4005. Refreshing by owner and suffix prevents an unnecessary recreation. The negative case should keep the responsible condition unchanged and confirm error 4005; the recovery case should change only that condition and verify a successful result without an unrecorded side effect.
Handling, retry, and recovery
Refresh the record from the authoritative WINS server and treat absence as idempotent when deleting. Do not recreate the name unless ownership and client requirements are known.
Retry it only after evidence shows a change in WINS database record lookup. Initialization, asynchronous completion, recall, or service readiness can justify bounded backoff; malformed metadata, invalid identifiers, policy rejection, unsupported versions, and integrity failures require correction. Before repeating a write or configuration operation after it, query completion state explicitly.
What to log for support and telemetry
- log decimal 4005, hexadecimal
0xFA5, and the producing API. - log the target object and observed WINS database record lookup state.
- log caller identity, process and thread IDs, machine or node identity, and UTC time.
- log attempt number, elapsed time, previous result, and any partial side effect.
- retain the first lower-level or component-specific error before Win32 translation.
Difference from nearby codes
The code reports a missing WINS database record, not a general DNS NXDOMAIN result or failure to resolve an arbitrary hostname.
Practical example
A console lists a record, replication removes it, and a later delete returns 4005.
Developer and administrator guidance
Code that handles it should keep its Win32 domain visible across exceptions, RPC responses, and JSON or REST wrappers. Administrators should verify the subsystem evidence before changing policy, deleting state, forcing failover, or replacing storage. Recovery is demonstrated only when a test observes 4005, changes the responsible condition, and confirms that the same operation succeeds without hidden data loss.
References
- Microsoft: System Error Codes (4000–5999) — reference for error 4005.
- Microsoft: Windows Internet Name Service (WINS) — reference for error 4005.
- Microsoft: WINS Management Protocol — reference for error 4005.
Looking for a different code? Search another status or error code.
