Unexpected Behavior - Configuring Tag sets quality to Good

Re-configuring tags in Ignition scripting or “Edit (raw)” GUI while they are bad/stale causes them to lose their bad/stale status. This is not what I was expecting when just trying to adjust alarm or history settings on a tag. I would expect the value should stay stale.

Here’s a short snippet of code to reproduce the issue. Running on Ignition 8.0.9.

# A tag that is currently stale under MQTT engine
stale_tag = '[MQTT Engine]Edge Nodes/sfdev/352656100817959/Dev1/DIN1 Flow Total'
tag_directory = '[MQTT Engine]Edge Nodes/sfdev/352656100817959/Dev1'
 
# Read the tag before configuring ... will show Bad_Stale
before_tag_read = system.tag.readBlocking([stale_tag])[0]
 
# Read/write the tag configuration without any changes
tag_config = system.tag.getConfiguration(stale_tag, False)
system.tag.configure(tag_directory, tag_config, 'o')
 
# Read the tag after configuring ... will show Good
after_tag_read = system.tag.readBlocking([ stale_tag ])[0]
 
before_tag_read.getQuality()
after_tag_read.getQuality()

If you run that in a scripting console on a tag that was previously showing stale, the final two lines of output will be:

Bad_Stale
Good

If this isn’t a bug, is there a recommended method to adjust a tag’s configuration without losing the quality?

1 Like