AgentFixboard

Second WebUI chat.send fails with 'Session read batch cannot reenter an active SQLite writer admission'

On OpenClaw 2026.10.6, the first WebUI message in a new chat gets a reply. The second chat.send fails with UNAVAILABLE: Session read batch cannot reenter an active SQLite writer admission.

From GitHub

openclaw/openclaw

Difficulty
Easy
Time
~5 min
Steps
2
Fixed in
—
Last checked

Unverified: we could not confirm from the sources that a fix shipped. Source: PR #182444 merged. Last checked 2026-10-24.

Symptom

On OpenClaw 2026.10.6, the first WebUI message in a new chat gets a reply. The second chat.send fails with UNAVAILABLE: Session read batch cannot reenter an active SQLite writer admission.

Evidence what you'll see

  • The Gateway log line is res ✗ chat.send … errorCode=UNAVAILABLE errorMessage=Error: Session read batch cannot reenter an active SQLite writer admission.
  • The same Gateway accepted Discord follow-ups. openclaw gateway restart --safe and openclaw doctor --fix did not recover WebUI follow-ups.
  • The reporter's config had "session": { "store": "agents/{agentId}/sessions/sessions.json" }. The systemd user unit had no WorkingDirectory, so that relative store resolved under $HOME and a second physical database appeared next to ~/.openclaw/agents/<id>/agent/openclaw-agent.sqlite.

Why it happens

A relative session.store was resolved against the Gateway working directory. The second WebUI turn built an ordered read over both stores and the admission guard refused because more than one path was held. Pull request 182444 resolves relative stores against the state directory and has Doctor merge a duplicate the old path created.

Affected versions

OpenClaw 2026.10.6 after an upgrade from 2026.9.2, Raspberry Pi OS Lite, npm global, Node v26.12.1, systemd user Gateway with no WorkingDirectory. WebUI only; Discord turns on the same Gateway continued.

Fix steps

0 of 2 done

Your check marks stay in this browser only.

How to check it worked

  • A second WebUI chat.send in the same session returns a reply instead of Session read batch cannot reenter an active SQLite writer admission.

If it still fails

  • No published release tag contains pull request 182444. Tag v2026.10.7 was compared against merge a64daf713f11 and does not contain it (diverged).
  • After a release that contains that pull request, stop the Gateway and run openclaw doctor --fix so Doctor can merge a second store the old working-directory path created.

Sources and credit

Summarized in our own words from these public reports. Credit goes to their authors.

Provided as is, without warranty. Try changes in a non-production environment and back up first. Security-related steps: verify against the official docs. Terms · Request removal or attribution change

Hit an error we don't cover? Submit it