openclaw - 💡(How to fix) Fix [Bug]: Single-row gateway session loads rebuild the store child-session index [1 pull requests]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Single-row gateway session loads rebuild the whole store child-session index, turning O(1)-looking event row loads into store-wide scans.

Root Cause

Single-row gateway session loads rebuild the whole store child-session index, turning O(1)-looking event row loads into store-wide scans.

Fix Action

Fixed

Code Example

Profile excerpt showed resolveChildSessionKeys at 3.57% and 3.30% inclusive cost, with buildStoreChildSessionIndex at 903.39s inclusive under single-row session loading.
RAW_BUFFERClick to expand / collapse

Bug type

Behavior bug (incorrect output/state without crash)

Beta release blocker

No

Summary

Single-row gateway session loads rebuild the whole store child-session index, turning O(1)-looking event row loads into store-wide scans.

Steps to reproduce

  1. Run a long-lived OpenClaw gateway workload with active session, subagent, and plugin metadata traffic.
  2. Capture a CPU profile and diagnostics timeline.
  3. Inspect the profile/timeline for the call chain described in the evidence below.

Expected behavior

Repeated single-row session loads for the same current store snapshot should share a scoped child-session index instead of rebuilding the full index on every row load.

Actual behavior

Profile evidence showed resolveChildSessionKeys and buildStoreChildSessionIndex under buildGatewaySessionRow and loadGatewaySessionRow, with repeated subagent registry read chains.

OpenClaw version

Current main source checkout before the linked fix branch; exact release build is NOT_ENOUGH_INFO.

Operating system

NOT_ENOUGH_INFO

Install method

Source checkout / development workflow.

Model

NOT_ENOUGH_INFO

Provider / routing chain

NOT_ENOUGH_INFO

Additional provider/model setup details

Not model-specific; this is a gateway/session/plugin hot-path performance issue.

Logs, screenshots, and evidence

Profile excerpt showed resolveChildSessionKeys at 3.57% and 3.30% inclusive cost, with buildStoreChildSessionIndex at 903.39s inclusive under single-row session loading.

Impact and severity

Affected: session event snapshots, transcript update snapshots, partial session refreshes, and Control UI row updates. Severity: Medium-High. Frequency: repeated single-row loads in the captured profile. Consequence: O(store entries) scans and subagent registry reads on hot update paths.

Additional information

Public issue extracted from local redacted performance evidence under /mnt/c/OpenClaw/bugs/BUG-041-single-row-gateway-session-loads-rebuild-the-whole-store-child-session-index. Private session labels, transcript paths, setup names, and raw local paths were not included.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

Repeated single-row session loads for the same current store snapshot should share a scoped child-session index instead of rebuilding the full index on every row load.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix [Bug]: Single-row gateway session loads rebuild the store child-session index [1 pull requests]