| Previous | Next |
| FILTER_S_FULL_CONTENTSCAN_IMMEDIATE | FILTER_S_DISK_FULL |
FILTER_S_CONTENTSCAN_DELAYED
Content scan should be scheduled later
FILTER_S_CONTENTSCAN_DELAYED is HRESULT 268083 (0x00041733) from Indexing Service. AllStat describes it as “A content scan of the disk needs to be scheduled for execution later.” The severity bit indicates a nonfailure result, but the value carries a specific condition that must not be collapsed into plain S_OK.
In the legacy Indexing Service or IFilter pipeline, FILTER_S_CONTENTSCAN_DELAYED means that a content scan of the disk needs to be scheduled for execution later. Ordinary completion must not be inferred from FILTER_S_CONTENTSCAN_DELAYED until the owning component’s state and outputs agree.
Where the status is encountered
FILTER_S_CONTENTSCAN_DELAYEDcan be returned during legacy Indexing Service catalog processing; log the exact method and object state instead of interpreting the constant outside that contract.FILTER_S_CONTENTSCAN_DELAYEDcan be returned during IFilter text and property extraction; log the exact method and object state instead of interpreting the constant outside that contract.FILTER_S_CONTENTSCAN_DELAYEDcan be returned during search enumeration, scan scheduling, or catalog administration; log the exact method and object state instead of interpreting the constant outside that contract.
Because FILTER_S_CONTENTSCAN_DELAYED is informational, a language binding may expose it as success and hide the symbolic distinction. Keep the original HRESULT available until the code-specific branch has run.
Evidence and telemetry
- For
FILTER_S_CONTENTSCAN_DELAYED, preserve scan scope and priority. - For
FILTER_S_CONTENTSCAN_DELAYED, preserve deferral reason. - For
FILTER_S_CONTENTSCAN_DELAYED, preserve not-before and deadline times. - For
FILTER_S_CONTENTSCAN_DELAYED, preserve queue persistence identifier. - For
FILTER_S_CONTENTSCAN_DELAYED, preserve resource condition used to release the delay.
Also record filter_s_contentscan_delayed_operation, filter_s_contentscan_delayed_state_before, filter_s_contentscan_delayed_state_after, UTC time, process and thread identifiers, component version, and a correlation ID. For privacy-safe FILTER_S_CONTENTSCAN_DELAYED diagnostics, log metadata and fingerprints instead of confidential source values.
What must be true before accepting it
For FILTER_S_CONTENTSCAN_DELAYED, verify that the deferral reason and latest acceptable execution time are explicit. Only this contract check establishes that FILTER_S_CONTENTSCAN_DELAYED is safe for the caller’s next step.
The return of FILTER_S_CONTENTSCAN_DELAYED can follow observable side effects, so recovery begins with state reconciliation.
Correct handling and recovery
Place the scan in a durable delayed queue, preserve its scope, and retry when the blocking load or resource condition clears. Do not treat delayed scheduling as completed indexing.
Retry FILTER_S_CONTENTSCAN_DELAYED only when a documented input or state has changed. Before another call following FILTER_S_CONTENTSCAN_DELAYED, confirm that completed side effects are idempotent or reconciled.
Diagnostic sequence
- Capture the raw value
0x00041733before wrappers, signed-decimal formatting, exceptions, or generic success handling replaceFILTER_S_CONTENTSCAN_DELAYED. - Identify the operation that returned
FILTER_S_CONTENTSCAN_DELAYED, including interface or callback, component build, thread, process, and the state-machine phase. - For
FILTER_S_CONTENTSCAN_DELAYED, prove the decisive condition: the deferral reason and latest acceptable execution time are explicit. - Inspect every output, count, status array, buffer, callback, task state, media timestamp, transaction vote, or security token that remains part of the
FILTER_S_CONTENTSCAN_DELAYEDcontract. - Compare state immediately before and after
FILTER_S_CONTENTSCAN_DELAYED; success severity does not guarantee that optional work or the caller’s intended high-level action completed. - Reproduce
FILTER_S_CONTENTSCAN_DELAYEDwith the smallest input that retains the same condition, then alter only the recorded cause before repeating the operation.
Difference from nearby results
FILTER_S_CONTENTSCAN_DELAYED must be distinguished from ordinary S_OK and from failure-severity values in the same API family; its documented state changes control the next action.
For FILTER_S_CONTENTSCAN_DELAYED, a nearby HRESULT can change object ownership, output validity, or the permitted next method.
Developer and administrator guidance
Code should branch on FILTER_S_CONTENTSCAN_DELAYED before a generic SUCCEEDED(hr) path whenever outputs, continuation, cancellation, or recovery differ. Telemetry should retain FILTER_S_CONTENTSCAN_DELAYED, 0x00041733, the producing method, and a correlation ID.
For FILTER_S_CONTENTSCAN_DELAYED, document ownership of retry, cancellation, cleanup, and user messaging. Use the producing subsystem’s tools for FILTER_S_CONTENTSCAN_DELAYED rather than generic cleanup that cannot address its contract.
Practical scenario
An indexing host defers a low-priority content scan during peak query load. It retains the request and starts it in the next maintenance interval.
A regression test should reproduce FILTER_S_CONTENTSCAN_DELAYED, assert the relevant outputs and state, then change only the decisive condition and verify the expected neighboring result or ordinary completion.
References
- Microsoft: Filter interface values — official Microsoft material used to interpret
FILTER_S_CONTENTSCAN_DELAYED. - Microsoft: About Indexing Service filters — official Microsoft material used to interpret
FILTER_S_CONTENTSCAN_DELAYED. - Microsoft: Using custom filters — official Microsoft material used to interpret
FILTER_S_CONTENTSCAN_DELAYED. - Microsoft: HRESULT values — official Microsoft material used to interpret
FILTER_S_CONTENTSCAN_DELAYED.
Looking for a different code? Search another status or error code.
