dapr - v1.8.1
Dapr 1.8.1
Fixes pubsub.mqtt component unable to subscribe to topics with wildcards
Problem
Dapr 1.8.0 introduced a regression in the MQTT PubSub component (pubsub.mqtt
). When subscribing to a topic using wildcards (such as orders/#
) or through a shared subscription, no messages would be delivered.
Impact
This issue impacts Dapr users that receive messages through the pubsub.mqtt
component and want to subscribe to topics using wildcards or through shared subscriptions.
Root cause
The root cause can be found in changes in the runtime (daprd), which in the past used to re-route incoming PubSub messages to the applications' handlers. With multiple changes that started in the Dapr 1.7 branch and were then completed in 1.8.0, routing of messages to the correct handler is now solely a responsibility of each component. However, the MQTT PubSub component did not implement a logic to route messages when applications subscribed using a wildcard (#
and/or +
) or through a shared subscription ($share/<groupname>/<topic>
).
Solution
The pubsub.mqtt
component has been updated to include a new routing logic that accounts for wildcards (#
and/or +
) and shared subscriptions ($share/<groupname>/<topic>
). Additionally, certification and unit tests have been created to prevent future regressions.
Details
- 🔍View and search all dapr releases.
- 🛠️Create and share lists to track your tools.
- 🚨Setup notifications for major, security, feature or patch updates.
- 🚀Much more coming soon!