| Previous | Next |
| CI_S_NO_DOCSTORE | CI_S_NEW_AUXMETADATA |
CI_S_CAT_STOPPED
Indexing catalog is stopped
CI_S_CAT_STOPPED is HRESULT 268326 (0x00041826) from Indexing Service. AllStat describes it as “The catalog has been stopped.” 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, CI_S_CAT_STOPPED means that the catalog has been stopped. For CI_S_CAT_STOPPED, acceptance depends on the returned state and outputs, not only on the cleared severity bit.
Where the status is encountered
CI_S_CAT_STOPPEDcan be returned during legacy Indexing Service catalog processing; log the exact method and object state instead of interpreting the constant outside that contract.CI_S_CAT_STOPPEDcan be returned during IFilter text and property extraction; log the exact method and object state instead of interpreting the constant outside that contract.CI_S_CAT_STOPPEDcan 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 CI_S_CAT_STOPPED 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.
What must be true before accepting it
For CI_S_CAT_STOPPED, verify that the stopped state is intentional or recoverable and no client assumes that catalog data is being updated. This check separates a legitimate CI_S_CAT_STOPPED outcome from code that ignores an incomplete or altered operation.
Before retrying CI_S_CAT_STOPPED, classify its effects as completed, partial, pending, cancelled, adapted, or terminal.
Evidence and telemetry
- For
CI_S_CAT_STOPPED, preserve catalog state and stop time. - For
CI_S_CAT_STOPPED, preserve initiating user or service event. - For
CI_S_CAT_STOPPED, preserve pending scans. - For
CI_S_CAT_STOPPED, preserve last successful checkpoint. - For
CI_S_CAT_STOPPED, preserve restart result and freshness timestamp.
Also record ci_s_cat_stopped_operation, ci_s_cat_stopped_state_before, ci_s_cat_stopped_state_after, UTC time, process and thread identifiers, component version, and a correlation ID. When logging CI_S_CAT_STOPPED, redact secret payloads but preserve stable identifiers and hashes needed for correlation.
Diagnostic sequence
- Capture the raw value
0x00041826before wrappers, signed-decimal formatting, exceptions, or generic success handling replaceCI_S_CAT_STOPPED. - Identify the operation that returned
CI_S_CAT_STOPPED, including interface or callback, component build, thread, process, and the state-machine phase. - For
CI_S_CAT_STOPPED, prove the decisive condition: the stopped state is intentional or recoverable and no client assumes that catalog data is being updated. - Inspect every output, count, status array, buffer, callback, task state, media timestamp, transaction vote, or security token that remains part of the
CI_S_CAT_STOPPEDcontract. - Compare state immediately before and after
CI_S_CAT_STOPPED; success severity does not guarantee that optional work or the caller’s intended high-level action completed. - Reproduce
CI_S_CAT_STOPPEDwith the smallest input that retains the same condition, then alter only the recorded cause before repeating the operation.
Correct handling and recovery
Inspect service and catalog state, pending maintenance, storage health, and the stop initiator. Restart only after the reason is resolved and then verify freshness.
Retry CI_S_CAT_STOPPED only when a documented input or state has changed. Do not immediately repeat CI_S_CAT_STOPPED when the same stable state would produce the same informational result.
Difference from nearby results
CI_S_CAT_STOPPED 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.
The distinction around CI_S_CAT_STOPPED determines whether the caller stops, waits, consumes output, or changes state.
Practical scenario
A catalog is stopped for volume maintenance. Search monitoring reports stale-but-available data, waits for the maintenance record to clear, then verifies indexing resumes.
A regression test should reproduce CI_S_CAT_STOPPED, assert the relevant outputs and state, then change only the decisive condition and verify the expected neighboring result or ordinary completion.
Developer and administrator guidance
A support bundle for CI_S_CAT_STOPPED should contain the first component-specific evidence and effective configuration. A support response for CI_S_CAT_STOPPED should preserve the original condition before any restart or unchanged retry can erase it.
For CI_S_CAT_STOPPED, document ownership of retry, cancellation, cleanup, and user messaging. Administration for CI_S_CAT_STOPPED should target the component that returned it instead of applying broad restarts.
References
- Microsoft: Filter interface values — official Microsoft material used to interpret
CI_S_CAT_STOPPED. - Microsoft: About Indexing Service filters — official Microsoft material used to interpret
CI_S_CAT_STOPPED. - Microsoft: Using custom filters — official Microsoft material used to interpret
CI_S_CAT_STOPPED. - Microsoft: HRESULT values — official Microsoft material used to interpret
CI_S_CAT_STOPPED.
Looking for a different code? Search another status or error code.