-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
memory.qmd.update.embedTimeoutMs default (120 s) is too low for local GGUF; error message doesn't surface the fix #74204
Copy link
Copy link
Open
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:session-stateSession, memory, transcript, context, or agent state can drift or corrupt.Session, memory, transcript, context, or agent state can drift or corrupt.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Description
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:session-stateSession, memory, transcript, context, or agent state can drift or corrupt.Session, memory, transcript, context, or agent state can drift or corrupt.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Type
Fields
Priority
None yet
Environment
memory/treeembeddinggemma-300m-qat-Q8_0.gguf, ~0.6 GB, auto-downloaded)query(hybrid BM25 + vector)Observed behavior
After enabling hybrid search (
searchMode: "query"), the gateway emits this warning repeatedly every 2–4 minutes:The embed process runs at 100–186% CPU on 4 vCPU for ~2 minutes before being killed. Peak RAM during GGUF model load: 9.6 GB. The embed never completes — every attempt times out at exactly 120 s. Vector search is effectively disabled.
Root cause
The GGUF embedding model takes 3–4 minutes on a 4-core CPU to embed a 37-file workspace. The default
memory.qmd.update.embedTimeoutMsis 120 s — less than the actual embed duration.The fix (
memory.qmd.update.embedTimeoutMs: 600000) is only discoverable viaopenclaw config schemaor the memory config reference page. The error message does not mention it.Inconsistency with built-in engine
agents.defaults.memorySearch.sync.embeddingBatchTimeoutSecondscorrectly differentiates:local,ollama,lmstudio)memory.qmd.update.embedTimeoutMsapplies the same 120 s default regardless of whether the embedding model is a local GGUF or a hosted API. For local GGUF workloads, 120 s is consistently insufficient on commodity hardware.Suggested fixes (pick one or combine)
Increase the default for
embedTimeoutMsto 600 s (matching the built-in engine's local-provider default), or detect whensearchModeisvsearch/querywith the default GGUF model and apply a longer default automatically.Improve the error message to mention the fix:
Add to the QMD troubleshooting docs a dedicated entry:
Workaround
Or use a smaller/faster GGUF model via
QMD_EMBED_MODEL:Additional context
The gateway remains healthy throughout (Slack connected, Atlassian/GWS MCP tools working). The embed failures are WARN-level and non-blocking. However, with the default 120 s timeout, vector search is effectively permanently disabled on any commodity host with a medium or larger workspace, with no clear path to resolution from the error message alone.