-
-
Notifications
You must be signed in to change notification settings - Fork 53k
Closed
Description
Description
When the gateway starts/restarts, it runs qmd update to sync the semantic search index. For installations with large indexes (8,000+ files across multiple collections), the command output exceeds the hardcoded 200,000 character buffer limit, causing the boot sync to fail silently every restart.
[memory] qmd boot update failed: Error: qmd update produced too much output (limit 200000 chars)
Environment
- OpenClaw: 2026.2.22-2
- QMD: latest (via bun)
- Index: 8,308 files, 34,850 vectors across 7 collections
qmd updateoutput: ~283K characters (exceeds 200K limit)
Collections indexed
- WhatsApp archive (markdown)
- Telegram archive (markdown)
- Signal archive (markdown)
- Workspace docs
- Google Drive shared folder
- Shared knowledge base
- Apple Notes export (~1,689 notes)
Current behavior
- Every gateway restart triggers
qmd update - Output exceeds 200K char limit → boot sync fails
- Background 15-minute incremental sync eventually catches up (produces less output since only changes)
- Semantic search has stale results for ~15 minutes after every restart
Expected behavior
Boot sync should succeed regardless of index size. Possible fixes:
- Raise or remove the 200K output limit for boot update operations
- Add a
--quietor--summary-onlyflag toqmd updatethat suppresses per-file output and only shows the summary line - Stream/discard stdout and only capture stderr for error detection (the gateway doesn't use the stdout content, it only needs to know success/failure)
- Allow configuring the output limit in
memory.qmd.updateconfig section (e.g.maxOutputChars)
Workaround
Accept the 15-minute gap. The background memory.qmd.update.interval cycle produces incremental output well under the limit and keeps the index current. Only the initial boot sync fails.
Impact
Low-medium. Semantic search works correctly 99% of the time. Only affects the first ~15 minutes after any gateway restart.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels