What does Windows error code 9705 (DNS_ERROR_RECORD_TIMED_OUT) mean?

 
Previous Next
DNS_ERROR_UNKNOWN_RECORD_TYPE DNS_ERROR_NAME_NOT_IN_ZONE

DNS_ERROR_RECORD_TIMED_OUT

DNS record timed out.

Windows assigns decimal 9705 and hexadecimal 0x000025E9 to DNS_ERROR_RECORD_TIMED_OUT. For DNS_ERROR_RECORD_TIMED_OUT, the constant belongs to Windows DNS client or DNS Server management; its name is not enough to identify the affected directory object, DNS zone, policy, installer, package, or resource context.

Operational meaning

For DNS_ERROR_RECORD_TIMED_OUT, the key question is whether the record remains valid for the operation or is refreshed before its timeout. The value describes a dynamic or cached DNS record whose lifetime expired; it does not prove that the whole domain, DNS service, network, servicing stack, application package, or operating system has failed.

Likely impact: Clients may continue using cached data temporarily, so recovery must verify both authoritative and resolver caches. For DNS_ERROR_RECORD_TIMED_OUT, record the scope that was actually tested instead of escalating from one rejected object or phase to a system-wide outage.

Where this result appears

  • DNS_ERROR_RECORD_TIMED_OUT can appear while processing a dynamic or cached DNS record whose lifetime expired.
  • DNS_ERROR_RECORD_TIMED_OUT can appear while a DNS Server API request that validates a zone, record, property, or server setting.
  • DNS_ERROR_RECORD_TIMED_OUT can appear while a dynamic update, zone transfer, WINS integration, or reverse-record workflow.
  • DNS_ERROR_RECORD_TIMED_OUT can appear while a management script or DNS console operation translated to a Win32 DNS status.

Typical causes

  • For DNS_ERROR_RECORD_TIMED_OUT, dynamic registration was not refreshed.
  • For DNS_ERROR_RECORD_TIMED_OUT, a scavenging or lease interval expired.
  • For DNS_ERROR_RECORD_TIMED_OUT, the caller uses a stale record handle.
  • For DNS_ERROR_RECORD_TIMED_OUT, replication delivered an already expired timestamp.

Diagnostic sequence

  1. capture DNS_ERROR_RECORD_TIMED_OUT immediately after the failing or status-returning call and record whether the API uses Win32, DNS_STATUS, HRESULT conversion, or callback semantics.
  2. identify the exact target involved in a dynamic or cached DNS record whose lifetime expired, including stable GUIDs, DNs, zone names, package identities, file hashes, policy names, or process identifiers as applicable.
  3. prove the state boundary: the record remains valid for the operation or is refreshed before its timeout.
  4. collect record name, type, and timestamp and zone aging and scavenging settings before restarting services, deleting objects, rebuilding packages, or changing policy.
  5. correlate registration or lease history with the DNS Server event log, DNS analytical logging when enabled, packet capture, zone metadata, server configuration, and the exact DNS API request.
  6. for DNS_ERROR_RECORD_TIMED_OUT, determine whether the result is a failure, warning, informational completion, continuation request, or marker constant before choosing retry behavior.
  7. for DNS_ERROR_RECORD_TIMED_OUT, after changing one responsible condition, repeat the same smallest operation and verify both success and absence of unintended partial effects.

Evidence to preserve

  • For DNS_ERROR_RECORD_TIMED_OUT, collect record name, type, and timestamp.
  • For DNS_ERROR_RECORD_TIMED_OUT, collect zone aging and scavenging settings.
  • For DNS_ERROR_RECORD_TIMED_OUT, collect registration or lease history.
  • For DNS_ERROR_RECORD_TIMED_OUT, collect authoritative server and replication state.
  • For DNS_ERROR_RECORD_TIMED_OUT, collect operation that encountered the timeout.

For DNS_ERROR_RECORD_TIMED_OUT, correlate this evidence with the DNS Server event log, DNS analytical logging when enabled, packet capture, zone metadata, server configuration, and the exact DNS API request. Preserve raw identifiers and the first detailed diagnostic: translating everything to 9705 can hide whether the cause was validation, topology, authorization, replication, policy, file I/O, packaging, or an intentional continuation state.

Recovery and retry

The recovery objective for DNS_ERROR_RECORD_TIMED_OUT is to refresh or recreate the authoritative record after validating the owner; do not extend stale data without confirming the endpoint.

For DNS_ERROR_RECORD_TIMED_OUT, retry only after the recorded boundary changes and prior completion is known. Read-only discovery for DNS_ERROR_RECORD_TIMED_OUT can usually be repeated with bounded backoff; directory mutations, DNS updates, policy installation, servicing actions, and PRI writes require a state check first. Backoff for DNS_ERROR_RECORD_TIMED_OUT cannot repair malformed input, unsupported structure, identity collision, missing authority, or incompatible package metadata.

Telemetry and support fields

  • For DNS_ERROR_RECORD_TIMED_OUT, record error_record_timed_out_operation — producing API, command, callback, or servicing phase.
  • For DNS_ERROR_RECORD_TIMED_OUT, record error_record_timed_out_target — stable object, zone, policy, package, file, or account identity.
  • For DNS_ERROR_RECORD_TIMED_OUT, record error_record_timed_out_state_before and error_record_timed_out_requested_state.
  • For DNS_ERROR_RECORD_TIMED_OUT, record error_record_timed_out_first_status — earliest component-specific code before translation.
  • For DNS_ERROR_RECORD_TIMED_OUT, record error_record_timed_out_server, error_record_timed_out_process, UTC timestamp, and correlation ID.

A support bundle for DNS_ERROR_RECORD_TIMED_OUT should include decimal 9705, hexadecimal 0x000025E9, the smallest reproducible request, target identity, effective configuration, and evidence from the owning Windows component. When documenting DNS_ERROR_RECORD_TIMED_OUT, remove secrets from exported logs but keep SIDs, GUIDs, package-family names, record types, and hashes when they are needed to distinguish objects.

Difference from nearby results

DNS_ERROR_NAME_DOES_NOT_EXIST means no record is present; this code identifies a record that aged out This distinction determines whether the correct next step is input correction, topology repair, continuation, policy review, package rebuild, or no error handling at all.

Practical validation scenario

A DHCP-managed host stops renewing and its record expires. Renewing the lease recreates current A and PTR data instead of preserving the stale address. A negative test should reproduce DNS_ERROR_RECORD_TIMED_OUT with the responsible condition preserved; the recovery test should alter only that condition and confirm the intended final state.

Developer and administrator guidance

Developers should model DNS_ERROR_RECORD_TIMED_OUT explicitly in the result domain instead of collapsing every nonzero value into “failed.” Administrators should capture evidence before destructive remediation and use the component that owns a dynamic or cached DNS record whose lifetime expired. Monitoring for DNS_ERROR_RECORD_TIMED_OUT should suppress range markers and classify warning, informational, cancellation, and continuation values separately from terminal failures.

References


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