07/03/2020
The MQTT transport mapping for OPC UA PubSub (https://reference.opcfoundatio…..t14/7.3.5/) specifies that the MQTT retain flag shall be set for metadata messages (and it must not be set for any other messages). The rationale behind this is that a newly connected client immediately receives the metadata it needs for understanding the datasets being sent.
However, this does not work anymore if the metadata message is chunked (UADP message mapping) because MQTT brokers retain only one MQTT message per topic meaning that only the latest message with retain flag set will be delivered to clients and earlier retained messages are discarded. Hence the client will only receive the last retained chunk of the metadata message, but not the complete metadata message.
Did I miss anything in the specification that counters this problem? Is there any workaround available?
05/30/2017
The RETAIN flag can be set on any message in the 1.05 RC.
Not sure why that restriction was added to 1.04.
The assumption is the MaxMessageSize must be large enough to not require chunking because of the issues you raise.
If that is not enough the set the MetaDataUpdateTime to rate fast enough for your application:
1 Guest(s)