LibSub/Wrapper: addMonitoredItems/addToSubscription failure behavior
Description
If we add a monitored item with a bad node id/value id couple,
Current implementation
The state machine closes the connection. This behavior is not documented.
Desired implementation
OR:
- The state machine keeps the connection opened and returns a failure code for this operation.
- The state machine closes the connection. The behavior is documented.
Decision
- The state machine keeps the connection opened and returns a list of status codes for the operation.
Consequences
-
PyS2OPC
,WrapperC
andLibSub
are impacted by this change.
Analysis
SOPC_ClientCommon_AddToSubscription
is calling SOPC_StaMac_CreateMonitoredItem
.
The latter function is sending a request and putting the state machine in the stCreatingMonIt
state.
After the return of this function, we do not know if monitored items have successfully been created.
The first function is actively waiting for the monitored items to be added to a list, or until it times out.
Passing a result list of status codes requires a more in-depth analysis.
Edited by Paul Luperini