Skip to content

chore(mosquitto): queue up to 10,000 messages per client - #147

Merged
stakach merged 1 commit into
masterfrom
chore/mosquitto-queue
Oct 14, 2026
Merged

stakach merged 1 commit into
masterfrom
chore/mosquitto-queue

Conversation

@stakach

@stakach stakach commented Oct 14, 2026

Copy link
Copy Markdown
Member

Why

A subscribing client is sent every retained message under its filter at once, and mosquitto silently drops whatever does not fit its outgoing queue: 1,000 messages by default. Large sites retain far more than that, so a client subscribing widely got only part of the state. That includes stagehand's hot list (one connected per module) and source clearing or sweeping retained state.

Change

max_queued_messages 10000. A client that needs more than that can subscribe more narrowly, or refresh.

At 3,000 systems and 15,000 modules (about 168,000 retained topics), the queue also limits what a single subscription can see. Source's startup sweep, which reads the broker while busy, found 2,090 of about 27,500 stale topics at 10,000 (385 at the default). PlaceOS/source#67 adds a clear and resync that works in rounds, so it's complete regardless of this limit.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@stakach
stakach merged commit ae58229 into master Oct 14, 2026
4 of 5 checks passed
@stakach
stakach deleted the chore/mosquitto-queue branch October 14, 2026 23:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant