UAExpert Request timedout

Questions regarding the use of the UaExpert.

Moderator: uaexpert

Post Reply
cacamille3
Hero Member
Hero Member
Posts: 73
Joined: 15 Feb 2012, 21:43

UAExpert Request timedout

Post by cacamille3 »

If I have a subscription with a PublishInterval of 1000ms and and a MaxKeepAlive of 60 request are timedout.
If there is no update for this subscription in this 1minute interval then the OPC UA Server sends a PublishResponse (KeepAlive)
But since the UaExpert PublishRequest are still sent with the same TimeoutHint of 60 its lead to :

Code: Select all

08:25:26.544Z|6|20CC* [uastack] OpcUa_SecureConnection_WatchdogTimerCallback: Request 68 timed out after 60825 msecs!
08:25:26.544Z|6|20CC* [uastack] OpcUa_Channel_ResponseAvailable: Operation Status 0x800A0000 (async state 0x05A84F58)
08:25:26.544Z|2|20CC* [uastack] OpcUa_Channel_ResponseAvailable: Request failed! (0x800A0000)
08:25:26.544Z|6|20CC* [uastack] OpcUa_Channel_ResponseAvailable: Calling Application Callback!
08:25:26.544Z|4|20CC* ==> SessionCallback
08:25:26.544Z|4|20CC* <== SessionCallback
08:25:26.544Z|6|20CC* [uastack] OpcUa_Channel_ResponseAvailable: Calling Application Callback Done!
08:25:26.544Z|6|1F14* --> CallbackJob::execute
08:25:26.544Z|6|1F14* --> UaSessionPrivate::publishCallback NoResults=0 More=false Result=0x800a0000
08:25:26.554Z|1|1F14* Error: Publish failed [status=0x800a0000]
Is this a known errors ? Will it be interessant to adapt the Request TimeoutHint regarding the Subscription PublishInterval/MaxKeepAlive

EDIT : I can change the PublishTimeOut in the UaExpert configuration, just sad that it does change automatically regarding PublishInterval & MaxKeepAlive of the slowly Subscriptions on a particular Session

User avatar
Support Team
Hero Member
Hero Member
Posts: 3072
Joined: 18 Mar 2011, 15:09

Re: UAExpert Request timedout

Post by Support Team »

Hi,

As you already discovered, the timeout hint for PublishRequests can be modified by the setting 'General.PublishTimeout'.

When creating a DA view, the MaxKeepAliveCount and LifetimeCount are automatically set to reasonable values depending on the publish interval and the publish timeout. Only when changing those values manually afterwards, you have to keep the configured publish timeout in mind.

Furthermore, servers that have a timed out publish request in their queue would simply discard it and use the next request instead, and UaExpert always takes care that at least two publish requests are in the server's queue. Hence, even if the subscription is configured with too short publish timeouts, the communication would not have problems with that.

Best regards
Support Team

Post Reply