What's the expected Server behaviour when not in Running State|OPC UA Implementation: Stacks, Tools, and Samples|Forum|OPC Foundation

Avatar
Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
sp_Feed sp_PrintTopic sp_TopicIcon
What's the expected Server behaviour when not in Running State
Avatar
Siyuan Xu
Member
Members
Forum Posts: 11
Member Since:
06/29/2023
sp_UserOfflineSmall Offline
1
08/31/2025 - 06:27
sp_Permalink sp_Print

Hi, 

Can @Randy or someone help to explain to me about the UA ServerState specification? I cannot find out a clear answer concerning the UA Server's behaviour when it's not in Running state. It feels like an undefined behaviour from UA Specification: UA Part 5: Information Model - 12.6 ServerState
The default behaviour from OPC Foundation's .NET standard stack is that, the server rejects any service request with ServiceResult: BadServerHalted. It results:

  • The client cannot establish a session with the server.
  • The already established session fails.
  • The ServerState cannot be read by the Client, nor be sent from the server to the client.

Is this expected behaviour across all vendors? Or is it vendor specific how the server should behave in non-Running states?

I am aware of that the server's behaviour can be overided. So why the standard stack choose to reject any service request?

 

Thanks in advance,

Siyuan

Avatar
Randy Armstrong
Admin
Forum Posts: 1666
Member Since:
05/30/2017
sp_UserOfflineSmall Offline
2
09/01/2025 - 23:38
sp_Permalink sp_Print

The definition of Bad_ServerHalted from Part 4

Bad_ServerHalted The Server has stopped and cannot process any requests.

Based on this definition you can go through the states and decide which ones mean it cannot process requests:

FAILED, SHUTDOWN and maybe UNKNOWN,

If the Server is in states other than these and Bad_ServerHalted is returned then it is bug in the .NET code.

Avatar
Jouni Aro
Moderator
Members

Moderators-Implementation
Forum Posts: 2
Member Since:
03/27/2014
sp_UserOfflineSmall Offline
3
09/05/2025 - 01:35
sp_Permalink sp_Print

But what's the purpose of the ServerState variable, if the client cannot even read the value in these cases?

My interpretation has been that these are just information for the client application that the server is not able to provide actual data. But, nobody really uses these, anyway, and as can be seen with the .NET stack it's not even possible, if it cannot ever provide all of the defined values. 

Forum Timezone: America/Phoenix
Most Users Ever Online: 975
Currently Online:
Guest(s) 70
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Forum Stats:
Groups: 2
Forums: 10
Topics: 1516
Posts: 5130