Condition child nodes carry the condition type's ns=0 NodeIds (direct Read hits the type node) #629
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found while landing the #597/#599 alarm work (W4). The Part 9 condition nodes the server materialises have child nodes (for example
UnshelveTime, i=9189) that carry the condition type's own ns=0 NodeIds instead of NodeIds unique to the instance. A direct Read of such a child therefore reaches the type node (or the wrong node), not the condition instance's value. Event delivery and the Part 9 method calls were not observed to be affected.Sources:
OtOpcUaNodeManager.cs(condition materialisation,UnshelveTimeprojection added in #597);ConditionMethodEventTests.<condition>/ShelvingState/UnshelveTime) directly and show which node answersFiled 2026-10-08 by the hardware-available issue sweep.
Fixed in
5051275b(Merge b626-629): condition children get instance-scoped NodeIds ({ConditionId}/{browse path}); shelve methods keep resolving via adopted MethodDeclarationIds; subtree is forgotten on teardown.