So I think I figured this out. I was not able to reproduce with the SDK example, but I was with Engine. This is how I got it to happen:
- I created an Edge Node with 3 tags under a single device and published from Transmission
- I deleted one of the tags from the Edge side
- I restarted MQTT Engine (this is key)
- I published a new birth from the Edge
This produced the following:
The reason is that MQTT Engine does not persist tags. But, it does still persist the tag configuration. So, I think ‘tagExists’ looks to see if it is in the DB tag table - which does not necessarily mean it is visible in Designer. With this, I suspect the tag you are trying to look up did exist at one point and was never deleted from the Ignition Tag DB (via a delete event or similar). But, Engine has since been restarted which is why it is not visible in Designer.
I believe that if you delete that tag from the DB, tagExists will properly return false.