| Previous | Next |
| WBREAK_E_INIT_FAILED | PSINK_E_INDEX_ONLY |
PSINK_E_QUERY_ONLY
A phrase-sink operation is available only during query processing
PSINK_E_QUERY_ONLY is HRESULT 0x80041790 (-2147215472 signed; 2147751824 unsigned). Its severity bit is 1, facility is 4 (FACILITY_ITF for these values), and code field is 0x1790. Standard HRESULT severity rules classify the value as a failure. AllStat describes the value as “Feature only available in query mode.”
State represented by the HRESULT
This result belongs to sending phrase information to IPhraseSink while the pipeline is operating in index mode. The decisive interpretation is that the requested sink behavior depends on query expansion semantics. Keep the symbolic constant and method stage together in logs; its hexadecimal value alone cannot identify the owning transition or input.
Phrase-sink callbacks differ between query and index processing. In the result investigation, the attachment type and pipeline mode define whether a callback is legal. This context narrows the responsible component without replacing the code-specific checks below.
Likely triggers
- At step 1 for it, query alternatives are emitted to an index-time sink
- At step 2 for it, mode flags are inverted
- At step 3 for it, a shared sink instance crosses query and indexing pipelines
The useful hypothesis for it must explain both sending phrase information to IPhraseSink while the pipeline is operating in index mode and the documented condition. Compare the failing case with a control that preserves phrase-sink method and attachment type and changes only index/query mode at construction; this prevents unrelated environment differences from dominating the result test.
Data for diagnosis
- This result: Phrase-sink method and attachment type.
- This result: Index/query mode at construction.
- This result: Originating word-breaker call.
- It: Instance and thread ownership.
Capture phrase-sink method and attachment type before releasing objects, closing handles or reconnecting. Retain the raw HRESULT with index/query mode at construction, component version, UTC timestamp and correlation ID. Bound the result telemetry to diagnostic metadata because document content, credentials and unrestricted query text may be sensitive.
Investigation order
- Trace the sink from BreakText to the failing call. Associate this observation specifically with it.
- Confirm whether the operation creates query alternatives or index tokens. Associate this observation specifically with it.
- Use separate sink implementations for each mode. Associate this observation specifically with it.
- Add a mode assertion before accepting the attachment. Associate this observation specifically with it.
Change one variable per it control run. Preserve the component version and target identity, then alter only the condition described as the requested sink behavior depends on query expansion semantics. This isolates whether it is causal rather than merely repeatable.
Correct response
Route the feature to query mode or omit it from indexing. Retrying with the same sink mode is a programming error. Record whether sending phrase information to IPhraseSink while the pipeline is operating in index mode produced any content, update or state transition before returning. If completion remains unknown, the path must not replay non-idempotent work until the owner confirms final state.
The retry gate for it should be a concrete change in phrase-sink method and attachment type or index/query mode at construction. A timer alone cannot demonstrate that the result contract condition has changed.
Scope of the signal
It does not indicate that the phrase text is too long or syntactically invalid. Without the call boundary for sending phrase information to IPhraseSink while the pipeline is operating in index mode, it also cannot identify which wrapper or configuration layer introduced the condition.
Related HRESULT values
WBREAK_E_QUERY_ONLY comes from the breaker feature; it identifies phrase-sink mode enforcement. In it telemetry, preserve neighboring constants separately because the same visible symptom may require a different caller action, owner or recovery gate.
Developer and administrator actions
- check At the code boundary, keep phrase-sink method and attachment type beside the returned HRESULT.
- check In telemetry, correlate index/query mode at construction with the target and component generation.
- check For regression coverage, force the documented condition: the requested sink behavior depends on query expansion semantics.
- check For operations staff, expose the corrective state change rather than a generic retry button.
- check After remediation, validate one known-good control and the original failing case.
Example in a pipeline
A custom breaker emits a query-time replacement phrase while building the catalog. A mode-aware adapter suppresses that attachment at index time. In this scenario, handling it at its real contract boundary prevents the application from collapsing a precise state into an unhelpful generic “search failed” message.
Official Microsoft references
- Microsoft: Word-Breaking values — official contract information relevant to it.
- Microsoft: IPhraseSink interface
- Microsoft: IWordBreaker::BreakText
- Microsoft: Windows Search language resources
Looking for a different code? Search another status or error code.