View Issue Details

IDProjectCategoryView StatusLast Update
0002938NodeSets, XSDs and Generated CodeApi Changepublic2016-02-02 19:37
ReporterJim Luth Assigned ToRandy Armstrong  
PrioritynormalSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Product Version1.03 
Summary0002938: Subscription.Refresh
Description

A need for a full refresh request for a subscription has risen in practice a few times.

Problem: In some situations the client application can lose track of the current value of each monitored item. There is currently no mechanism provided for an easy and reliable way to refresh the current values.

The situation may occur:

#1 after the client re-enables the subscription by setting the PublishingMode: the specification does not define whether the current values should be sent for each item with a new notification and not all servers do this

#2 after a connection break that continues so long that the RetransmissionQueue in the server is exhausted, leading to lost notification messages. The client has no way to find out which monitored items are in sync with the server after that

The current options to refresh the items are:
a) recreate the complete subscription: this is too big an operation for such a "small" problem and breaks the continuity of the data
b) read all values for the items: the problem is that the 'read' is done in a "separate channel" and the results may be mixed up with new notifications that arrive at the same time from the subscription, so the client needs to perform extra synchronization to find out the latest values

Solution proposal:

  • Add a Refresh method, which would instruct the server to resend the current value for each monitored item in the subscription.
  • Also document the desired behavior for setPublishingMode when the subscription is re-enabled: require that a notification of new values are sent to the client. Disabling/Enabling the subscription could then be used to refresh the group. The application developers and users won't just figure this option out very easily, I am afraid, though.
TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0002704 closedWolfgang Mahnke 10000-005: Information Model Subscription.Refresh 

Activities

Jim Luth

2015-01-15 15:53

administrator   ~0005722

Agreed to add a Refresh UA method to the Server Object. Will only provide existing values from the cache.

Define method in part 5 and explain in Part 4.

Matthias Damm

2015-01-15 15:53

reporter   ~0005723

Added SubscriptionRefresh method to OPC UA Part 5 - Information Model 1.03 Draft 04_MD.docx

Matthias Damm

2015-01-15 15:53

reporter   ~0005724

We renamed the method to ResendData

Matthias Damm

2015-01-15 15:53

reporter   ~0005725

Changed method name to ResendData - uploaded updated part 5

Randy Armstrong

2015-02-18 15:49

administrator   ~0005822

Added ResendData Method Support.

Jim Luth

2016-02-02 19:37

administrator   ~0006652

Closing issues that were fixed in the past.

Issue History

Date Modified Username Field Change
2015-01-15 15:53 Jim Luth New Issue
2015-01-15 15:53 Jim Luth Issue generated from: 0002704
2015-01-15 15:53 Jim Luth Relationship added related to 0002704
2015-01-15 15:54 Jim Luth Project 10000-005: Information Model => NodeSets, XSDs and Generated Code
2015-01-15 15:54 Jim Luth Category Spec => Api Change
2015-01-15 15:55 Jim Luth Assigned To => Randy Armstrong
2015-01-15 15:55 Jim Luth Status new => assigned
2015-02-18 15:49 Randy Armstrong Note Added: 0005822
2015-02-18 15:49 Randy Armstrong Status assigned => resolved
2015-02-18 15:49 Randy Armstrong Resolution open => fixed
2016-02-02 19:37 Jim Luth Note Added: 0006652
2016-02-02 19:37 Jim Luth Status resolved => closed