# S&F historical replay loses data

**URL:** <https://forum.cirrus-link.com/t/s-f-historical-replay-loses-data/865>\
**Category:** Ignition Modules\
**Tags:** mqtt-transmission, mqtt-engine\
**Created:** [May 25, 2026, 11:36pm UTC](https://forum.cirrus-link.com/t/s-f-historical-replay-loses-data/865 "2026-05-25T23:36:20Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![alex](https://avatars.discourse-cdn.com/v4/letter/a/db5fbb/32.png) [@alex](https://forum.cirrus-link.com/u/alex)\
**Post date:** [May 25, 2026, 11:36pm UTC](https://forum.cirrus-link.com/t/s-f-historical-replay-loses-data/865/1 "2026-05-25T23:36:20Z")

</div>

Hi!

Im trying to setup store and forward (using docker as test environment) and im constantly getting constant _“UnknownMetricException”_ after DBIRTH triggers.

I was following [documentation](https://docs.chariot.io/display/CLD83/Configuring+history+on+MQTT+Engine+tags) and for our architecture, **“Writing historical events directly to tags”** is the best fit and that’s what I attempted to setup.  
Out of curisosity I tried to write directly to historian and that method works fine.

## Setup

The idea is to basically simulate an outage for a known period of time with two tags (short tests for now, 1 min) and after that get a snapshot of each historian. I expected to see some data loss because of keep alive…but actually all data is lost.

### Versions used in test

- Ignition 8.3.4
- MQTT Engine 5.0.4
- Transmission 5.0.3

### Writing historical events directly to tags

 ![imagem](https://canada1.discourse-cdn.com/flex028/uploads/cirrus_link/original/1X/9eef786a6364b8fe0a616a2fb23287cef343d7eb.png)

> Store Historical Events = false  
> Allow Back-fill Data = true  
> In-Order History = true  
> Rolling buffer disabled

### Results

So basically when I simulate outage, I get “UnknownMetricException” which I believe is the cause or maybe symptom of the real issue. I have _SparkplugBPayloadHandler_ set to TRACE, here is relevant part:

```auto
17:50:33.944 D Processing NBIRTH from EdgeDevices_GroupID/Place_EdgeNodeID with Seq# 0
17:50:33.954 D Processing DBIRTH from EdgeDevices_GroupID/Place_EdgeNodeID with Seq# 1
17:50:33.960 D Initializing DBIRTH metric SimTag1
17:50:34.925 W Throwing UnknownMetricException for SimTag1
17:50:34.925 I Requesting Rebirth ... cause: Unknown metric
17:50:34.936 D Processing NBIRTH with Seq# 0
17:50:34.977 D Processing DBIRTH with Seq# 1

```

It seems like a race condition and I attempted to tinker a bit with _birthSettleDelay_ (discovered with open api spec) by ﻿﻿bumping from 0 → 1000/2000ms but results are pretty much the same.

Am I missing something here? Thanks in advance.

P.S. Full config dumps from the gateway API:

> **MQTT Engine**
>
> ```json
> {
> "type": "com.cirruslink.mqtt.engine.gateway/general",
> "description": null,
> "enabled": true,
> "version": 1,
> "collection": "core",
> "collections": [
> "core"
> ],
> "signature": "a510dcb1015ec1f58b2584ac74ac69e7eea62d903320bf7905b212d1d4e4ba0a",
> "config": {
> "enableEngine": true,
> "blockNodeCommands": false,
> "blockDeviceCommands": false,
> "includeSecurityContext": false,
> "blockTagPropertyChanges": true,
> "storeHistoricalEvents": false,
> "reorderingTimeout": 10000,
> "enableLatching": false,
> "latchTimeout": 2000,
> "enableBdSeqChecking": true,
> "metricTimestampValidation": false,
> "customProperties": "{}",
> "rebirthDebounceDelay": 5000,
> "useCirrusEncoder": true,
> "sparkplugMessageHandlerThreadCount": 500,
> "enableAlarmEventPublishing": true,
> "alarmDisplayPathType": "IDS_AND_EDGE",
> "h2dbDirectory": "/usr/local/bin/ignition/data",
> "h2dbPort": 9098
> },
> "backupConfig": {
> "enableEngine": true,
> "blockNodeCommands": false,
> "blockDeviceCommands": false,
> "includeSecurityContext": false,
> "blockTagPropertyChanges": true,
> "storeHistoricalEvents": false,
> "reorderingTimeout": 10000,
> "enableLatching": false,
> "latchTimeout": 2000,
> "enableBdSeqChecking": true,
> "metricTimestampValidation": false,
> "customProperties": "{}",
> "rebirthDebounceDelay": 5000,
> "useCirrusEncoder": true,
> "sparkplugMessageHandlerThreadCount": 500,
> "enableAlarmEventPublishing": true,
> "alarmDisplayPathType": "IDS_AND_EDGE",
> "h2dbDirectory": "/usr/local/bin/ignition/data",
> "h2dbPort": 9098
> },
> "data": [
> "backupConfig.json",
> "config.json"
> ],
> "attributes": {
> "lastModification": {
> "actor": "admin",
> "timestamp": "2026-05-25T16:18:15Z"
> },
> "lastModificationSignature": "c8d6b45876029405ccfb67abc84aab4188d2089b2169ad2765a7f9d14513be39",
> "enabled": true
> },
> "metrics": {},
> "healthchecks": {}
> }
> 
> ```

> **Transmitter**
>
> ```json
> {
> "type": "com.cirruslink.mqtt.transmission.gateway/transmitter",
> "name": "sim_edge",
> "description": null,
> "enabled": true,
> "version": 1,
> "collection": "core",
> "collections": [
> "core"
> ],
> "signature": "8422067dc190c0f7809cd3dabc48277ae2854da7746ff337444ce8bb7e51d4c8",
> "config": {
> "tagProvider": "default",
> "tagPath": "EdgeDevices",
> "tagPacingPeriod": 50,
> "serverSet": "Default",
> "discoveryDelay": 0,
> "historyStore": "StoreAndForwardSimulation",
> "enableStoreForwardByDefault": true,
> "inOrderHistory": true,
> "alarmEventEnable": false,
> "aliasedTags": false,
> "compressionTypeWrapper": "NONE",
> "convertUdts": false,
> "deviceLevelUdtsAsDevices": false,
> "publishUdtDefinitions": true,
> "optimizeUdts": true,
> "blockCommands": false,
> "validateSecurityContext": false,
> "securityContextHashingAlgorithm": "SHA_256",
> "publishBed": false,
> "echoRequestTimeout": -1,
> "groupId": "EdgeDevices_GroupID",
> "edgeNodeId": "Place_EdgeNodeID",
> "filteredProperties": "accessRights;clampMode;deadband;deadbandMode;formatString;historicalDeadband;historicalDeadbandMode;historicalDeadbandStyle;historyEnabled;historyMaxAge;historyMaxAgeUnits;historyProvider;historySampleRate;historySampleRateUnits;historyTagGroup;historyTimeDeadband;historyTimeDeadbandUnits;opcItemPath;opcServer;permissionModel;rawHigh;rawLow;sampleMode;scaleFactor;scaleMode;scaledHigh;scaledLow;tagGroup;valueSource;expression;expressionType;ConfiguredTagPath;eventScripts;readPermissions;writePermissions;eventScripts;parentEnabled;sourceTagPath",
> "rebirthDebounceDelay": 5000,
> "includeSparkplugDataTypes": true,
> "useCirrusEncoder": true,
> "birthSettleDelay": 0,
> "sendAllProps": false,
> "reconciliationWindow": 5000
> },
> "backupConfig": {
> "tagProvider": "default",
> "tagPath": "EdgeDevices",
> "tagPacingPeriod": 50,
> "serverSet": "Default",
> "discoveryDelay": 0,
> "historyStore": "StoreAndForwardSimulation",
> "enableStoreForwardByDefault": true,
> "inOrderHistory": true,
> "alarmEventEnable": false,
> "aliasedTags": false,
> "compressionTypeWrapper": "NONE",
> "convertUdts": false,
> "deviceLevelUdtsAsDevices": false,
> "publishUdtDefinitions": true,
> "optimizeUdts": true,
> "blockCommands": false,
> "validateSecurityContext": false,
> "securityContextHashingAlgorithm": "SHA_256",
> "publishBed": false,
> "echoRequestTimeout": -1,
> "groupId": "EdgeDevices_GroupID",
> "edgeNodeId": "Place_EdgeNodeID",
> "filteredProperties": "accessRights;clampMode;deadband;deadbandMode;formatString;historicalDeadband;historicalDeadbandMode;historicalDeadbandStyle;historyEnabled;historyMaxAge;historyMaxAgeUnits;historyProvider;historySampleRate;historySampleRateUnits;historyTagGroup;historyTimeDeadband;historyTimeDeadbandUnits;opcItemPath;opcServer;permissionModel;rawHigh;rawLow;sampleMode;scaleFactor;scaleMode;scaledHigh;scaledLow;tagGroup;valueSource;expression;expressionType;ConfiguredTagPath;eventScripts;readPermissions;writePermissions;eventScripts;parentEnabled;sourceTagPath",
> "rebirthDebounceDelay": 5000,
> "includeSparkplugDataTypes": true,
> "useCirrusEncoder": true,
> "birthSettleDelay": 0,
> "sendAllProps": false,
> "reconciliationWindow": 5000
> },
> "data": [
> "backupConfig.json",
> "config.json"
> ],
> "attributes": {
> "lastModification": {
> "actor": "admin",
> "timestamp": "2026-05-25T18:31:34Z"
> },
> "uuid": "cda0a3de-3d85-4681-b1c4-8d30904c0bea",
> "lastModificationSignature": "bf234ac2e6f858358f065f08792427d0f6722b1db87d5415c22168362e164238",
> "enabled": true
> },
> "metrics": {},
> "healthchecks": {}
> }
> 
> ```

EDIT: Broken link.

---

<div class="post-metadata">

**Author:** ![wes.johnson](https://avatars.discourse-cdn.com/v4/letter/w/f14d63/32.png) [@wes.johnson](https://forum.cirrus-link.com/u/wes.johnson)\
**Post date:** [May 26, 2026, 2:50pm UTC](https://forum.cirrus-link.com/t/s-f-historical-replay-loses-data/865/2 "2026-05-26T14:50:16Z")

</div>

I’m not quite sure what is going on here. I suspect it might have something to do with your specific tags. Can you open a support ticket by emailing [support@cirrus-link.com](mailto:support@cirrus-link.com)? You can/should also reference this forum post. If possible, can you also share an export of your Transmission side tags in that email?

---

<div class="post-metadata">

**Author:** ![alex](https://avatars.discourse-cdn.com/v4/letter/a/db5fbb/32.png) [@alex](https://forum.cirrus-link.com/u/alex)\
**Post date:** [May 26, 2026, 3:04pm UTC](https://forum.cirrus-link.com/t/s-f-historical-replay-loses-data/865/3 "2026-05-26T15:04:23Z")

</div>

I will share it, thanks. But anyway, I have 2 tags simulating a ramp. SimTag1 and SimTag2.

[default]EdgeDevices/Sim/SimTag1  
[default]EdgeDevices/Sim/SimTag1

tagType: AtomicTag  
dataType: Float4  
valueSource: memory  
historyEnabled: True  
historyProvider: ignition\_core  
historicalSampleMode: (default)  
historicalDeadband: 0.0  
historicalDeadbandMode: Off  
historyTimeDeadband: 0
