connectivityCheckInterval != 0

21 views
Skip to first unread message

Rudolf

unread,
Aug 5, 2025, 10:42:14 AMAug 5
to open62541
Hi,

I have a client implementation with inactivitycheck enabled, i.e. at 500ms.
When something is wrong with the connection I get the callback as expected.
I only use this callback to signal a possible issue, I don't take any action on it, however the session is reconnected.

The logging shows:

[2025-08-05 14:35:32.043] [info ] configuration sharing state: CONFIGURATION_MONITOR

[2025-08-05 14:36:06.461] [info ] OPCIOT has timed out due to inactivity

[2025-08-05 14:36:11.064] [warning] OPCIOT client Request with unknown RequestId 329

[2025-08-05 14:36:11.064] [error ] OPCIOT client Processing the message returned the error code BadSecurityChecksFailed

[2025-08-05 14:36:13.612] [warning] OPCIOT client Client connection already initiated

[2025-08-05 14:36:13.612] [debug ] OPCIOT client Client Status: ChannelState: Closing, SessionState: Created, ConnectStatus: Good

[2025-08-05 14:36:13.612] [debug ] OPCIOT channel TCP 784 | SC 14 | SecureChannel closed

[2025-08-05 14:36:13.612] [warning] OPCIOT client Received Publish Response for a non-existant subscription

[2025-08-05 14:36:13.612] [info ] Skipped 9 duplicate messages..

[2025-08-05 14:36:13.612] [warning] OPCIOT client skip verifying ApplicationURI for the SecurityPolicy http://opcfoundation.org/UA/SecurityPolicy#None

[2025-08-05 14:36:13.614] [debug ] OPCIOT network TCP 896 | Opening a connection to "docker_wsl6" on port 50000

[2025-08-05 14:36:13.614] [debug ] OPCIOT network TCP 784 | Socket closed

[2025-08-05 14:36:13.627] [debug ] OPCIOT channel TCP 896 | SC 15 | SecureChannel opened with SecurityPolicy http://opcfoundation.org/UA/SecurityPolicy#None and a revised lifetime of 600.00s

[2025-08-05 14:36:13.627] [debug ] OPCIOT client Client Status: ChannelState: Open, SessionState: Created, ConnectStatus: Good

[2025-08-05 14:36:13.627] [info ] OPCIOT is connected

[2025-08-05 14:36:13.630] [debug ] OPCIOT client Client Status: ChannelState: Open, SessionState: Activated, ConnectStatus: Good

[2025-08-05 14:36:13.630] [trace ] OPCIOT session activated. Starting subscriptions

[2025-08-05 14:36:13.650] [warning] OPCIOT client Invalid subscription sequence number: expected 227 but got 237

[2025-08-05 14:36:13.650] [trace ] OPCIOT Subscription 141597261 created, status code: 0

[2025-08-05 14:36:13.650] [warning] OPCIOT Server revised the lifetime count. Requested: 60000, Revised: 18000

[2025-08-05 14:36:13.651] [trace ] OPCIOT Subscription 141597262 created, status code: 0

[2025-08-05 14:36:13.651] [warning] OPCIOT Server revised the lifetime count. Requested: 60000, Revised: 18000

[2025-08-05 14:36:13.652] [debug ] OPCIOT client Received a ServiceFault response

[2025-08-05 14:36:13.652] [trace ] OPCIOT Received CreateMonitoredItemsResponse with 0 results

[2025-08-05 14:36:13.678] [trace ] OPCIOT Received CreateMonitoredItemsResponse with 67 results

[2025-08-05 14:36:13.678] [warning] OPCIOT Server revised sampling interval. Requested: 100, Revised: 1000

[2025-08-05 14:36:13.678] [info ] Skipped 3 duplicate messages..


It all recovers, but the behaviour is different with a longer 'connectivityCheckInterval', or with it set to 0.
If I disable it, I can bring the network interface down for 30 seconds without issue and it all recovers without reconnecting.

It this expected? Why does it work like this?

Appreciate any insights you might have. Thanks!

This is with 1.4.13, but I have seen this with 1.3.15 as well.
(Consumed via conan, and with open62541pp)
Reply all
Reply to author
Forward
0 new messages