Changing UDT Parent Type

I’ve noticed in 8.1.3 that I can no longer change the UDT parent type on a UDT instance. Was this an intentional change? (I found this feature very convenient!)

I see this entry in the release notes, but i thought it only applied to nested UDT instances.

Yep, it’s broken and was applied incorrectly to all UDT instances instead. Super frustrating as in order to change the parent now you have to delete the tags altogether and reimport…

I raised a bug with support but haven’t heard anything from them and it’s been almost a month, also posted below

@levi_jacobs, You are correct, the change in behavior here was in order to fix an issue related to overriding of a Parent Data Type within a nested UDT instance as well as improper behavior related to bindings against the Parent Data Type. For example:

However, in taking a broader look at things, this ended up reaching a bit further into locking out the ability to change it at an instance level, which while perhaps unintended, did work before. With how properties are stored with a tag, I think it is probably better this way, as changing the parent data type of a tag instance would result in a bunch of potentially stale data/properties being stored with the tag object (since it now has a new shape).

There is an open ticket to address the import-with-overwrite to change the tag definition.

Most of the time, if I need to change a parent type, both udts are going to have exactly the same udt parameters, so this isn’t an issue. I imagine it would be the same for most users. If you’re changing the instance to a completely unrelated one, then you should probably be creating a new instance anyway

3 Likes

Ok. Thanks for the response.