Contents
Cirrus Link Resources
Cirrus Link Website
Contact Us (Sales/Support)
Forum
Cirrus Link Modules Docs for Ignition 7.9.x
Inductive Resources
Ignition User Manual
Knowledge Base Articles
Inductive University
Forum
The reoderingTimeout custom property feature is supported for Ignition7 in MQTT Engine module version 3.4.10 or greater and for Ignition8 in MQTT Engine module 4.0.4 through 4.0.13
In module version 4.0.14 or greater, it is replaced by a Reordering Timeout property under MQTT Engine General tab Miscellaneous section. If upgrading from a pre 4.0.14 module with a "reorderingTimeout" custom property configured, the upgrade will migrate the value for the custom property to the Reordering Timeout property.
MQTT Engine needs to process messages from Sparkplug Edge Nodes in order. It is not uncommon for horizontally scalable/clustered MQTT Servers to not support guaranteed in order delivery of QoS 0 messages and this custom property allows the 're-ordering' of messages that arrive out of order.
If MQTT Engine receives a message with an out of order sequence number, the message is buffered and the reorderingTimeout timer is started.
If the expected sequence number does not come in before the reorderingTimeout expires, all buffered data is flushed and a rebirth is requested.
If the expected sequence number does arrive before the reorderingTimeout expires, the data in the buffer is processed until the next expected sequence number message is missing, when the reorderTimeout timer is restarted.