-
Notifications
You must be signed in to change notification settings - Fork 81
Open
Labels
bugSomething isn't workingSomething isn't working
Description
In the local non shared subscription path, when a local route exists but the corresponding session is missing or not an IMQTTTransientSession, LocalDistService.dist does not write a result entry for that MatchInfo. This causes upstream BatchDeliveryCall to log repeated No deliver result warnings.
Expected behavior is to return NO_RECEIVER and always include a result entry.
Example log:
2026-02-04 22:23:14.338 WARN ... BatchDeliveryCall [BatchDeliveryCall.java:137] No deliver result: tenantId=tffffffff, route=matcher {
filterLevel: "#"
mqttTopicFilter: "#"
}
receiverId: "1000061147400331990937"
incarnation: 1147400331990937
, batcherKey=DelivererKey[subBrokerId=0, delivererKey=cb3564ba-7c07-4e92-bfcb-8c5839ee9a01/1672626574:tffffffff:2]
Reproducible Steps
- Start a single node BifroMQ without any custom plugins
- Create a local non shared subscription route, for example subscribe to
# - Disconnect the corresponding client session so the session is missing or not an
IMQTTTransientSession - Publish a message that matches the route
- Observe repeated
No deliver resultwarnings in logs
Root cause
In the local route branch of LocalDistService where missing or non transient sessions do not generate a result entry.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working