-
-
Notifications
You must be signed in to change notification settings - Fork 69.2k
[Bug]: QMD embed interval continuously times out on CPU-only hardware after 2026.2.17 multi-agent boot sync #20346
Copy link
Copy link
Closed
Description
Summary
After updating to OpenClaw 2026.2.17, qmd embed runs on a 5-minute interval for all configured agents (not just the default agent, per #17663 fix). On CPU-only hardware (DigitalOcean VPS, AMD CPU, no GPU), the embed operation cannot complete within the 120s timeout. This results in continuous timeout failures every 5 minutes per agent.
Before 2026.2.17: Zero qmd embed failures. QMD search (BM25) and update worked fine.
After 2026.2.17: 208+ embed timeout failures in a single day. Every 5 minutes, both agents fail.
Steps to Reproduce
- Configure
memory.backend: "qmd"with 2+ agents on a CPU-only VPS - Update to 2026.2.17
- Observe logs:
[memory] qmd embed failed (interval): Error: qmd embed timed out after 120000msevery 5 minutes per agent
Impact
- Log spam: 200+ timeout errors per day
- Potential event loop blocking: 120s timeout operations may degrade gateway responsiveness, causing downstream failures (cron delivery timeouts, tool call delays)
- Wasted CPU cycles: Each embed attempt loads a 328MB GGUF model and attempts to process the full corpus before timing out
Environment
- OpenClaw 2026.2.17
- QMD 1.0.7
- Ubuntu 24.04, AMD CPU, 8GB RAM, no GPU
- 2 agents configured
searchModedefaults tosearch(BM25) — embed output is not consumed
Expected Behavior
One or more of:
- Skip embed on CPU-only hardware if the operation consistently times out (adaptive backoff)
- Provide
embedInterval: 0orembed: falseconfig option to disable embed while keepingqmd update(BM25 indexing) active - Do not run embed on interval if
searchModeissearch(BM25 does not use vector embeddings) - Exponential backoff on embed failures instead of retrying at the same fixed interval
Notes
qmd update(BM25 indexing) works perfectly — 300ms, no issuesqmd search(BM25) works perfectly — sub-second resultsqmd vsearch(vector) works but takes ~16s per query on CPU — functional but slowqmd embed(batch vector indexing) cannot complete within 120s on CPU- The embed interval was not running before 2026.2.17 for non-default agents, so this is a regression in observable behavior
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Type
Fields
Give feedbackNo fields configured for issues without a type.