Null value in memory tag is read as empty string

We have strange bug, where a nulled memory string tag sometimes is read in as empty string.

We use a memory string tag to keep track of the operator working on a machine. After logout the tag is nulled.

When an operator logs back in the tag is set again. The problem is, when reading from the tag, sometimes the nulled tag will be interpreted as empty string. Which is strange, because we also have a reference tag on that same memory tag and the reference tag is showing the null value?
We checked the data type and logged it. Sometimes it is a none-type sometimes it is unicode.

There is no further processing of the values in the scripts, where they are used. For troubleshooting we go straight from reading the tags with system.tag.readBlocking to the logger.

Any idea what might be the problem here?

Memory tags are not properly equipped to hold nulls as good values. Use an empty string.

1 Like

Thanks @pturmel. Do you mind to add why they can not handle nulls? I would like to understand what's happening.

I don't know--I don't have access to the source code. I've simply observed strangeness when null is combined with "Good" in the tag system.