kai-server: inotify exhaustion - Failed to allocate directory watch: Too many open files #196
Labels
No labels
burndown-2026-06
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
coherence-core
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
qa-fixture
role/ai
role/creator
role/design
role/director
role/engineer
role/exec
role/human
role/ops
role/qa
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-flight-deck/infrastructure#196
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Symptom
During
make claude-remote-control-installon kai-server (2026-06-03),systemctl daemon-reloadprinted:The install still completed and the units loaded, so this did not block that work. It is a standalone host-resource problem surfaced by the reload.
Why it matters
Too many open filesfrom systemd's directory-watch allocation means kai-server has exhausted its inotify budget (fs.inotify.max_user_instances, possibly alsomax_user_watches). When that budget is pegged it degrades anything that relies on file watches host-wide: systemd path units, file watchers, editors, and dev tooling can silently miss events or fail to start watching. On the ops host that runs the homelab this is worth fixing rather than ignoring.Diagnostics
The default
max_user_instancesof 128 is easy to exhaust once several long-lived watchers are running.Likely fix
Raise the limits durably via a drop-in, then reload:
Pick the final values after the diagnostics show what is actually consuming instances. If a single runaway process is leaking watches, fixing that is the real fix rather than only raising the ceiling.
Out of scope
This does not affect the claude-remote-control daemon recovery shipped the same day. Filed separately so it is tracked on its own.
Backlog burndown 2026-06-17: closing low-priority (P3/P4) to bring the open count to a manageable level. Nothing lost — reopen if this resurfaces. Batch tag:
burndown-2026-06.