Professional OPC
Development Tools

logos

Failed to detect server disconnect/subscription update

More
10 Apr 2019 07:14 #7316 by veda
Did a quick test, and it seams like the issue is now solved.

Please Log in or Create an account to join the conversation.

More
10 Apr 2019 05:34 #7315 by support
Hello,

this issue is now fixed. Please download the recent QuickOPC 2018.3 (should be build 5.54.1151.1 or later) from our Web page or as a NuGet package, and rebuild you project.

Thanks again for reporting it in such detail.

Best regards

Please Log in or Create an account to join the conversation.

More
08 Apr 2019 06:30 #7309 by support
Thank you very much. This makes it clear that there is a bug on our side, when QueueCallbacks == true.
We will fix it and I will let you know here then.

Best regards

Please Log in or Create an account to join the conversation.

More
08 Apr 2019 06:27 #7308 by veda
Your assumption was correct. Started two clients simultaneously; one with QueueCallbacks set to false and one to true. The client with QueueCallbacks set to false did report changes and the other one did not report changes.

Please Log in or Create an account to join the conversation.

More
06 Apr 2019 15:26 #7307 by support
Thank you very much.

Can you please set the QueueCallbacks property to 'false' on the EasyUAClient instance after creating it? As a workaround only. It is likely that it will resolve the issue. If it does, I would then know what the problem is, and work on a fix.

Best regards

Please Log in or Create an account to join the conversation.

More
06 Apr 2019 08:49 #7306 by veda
The test program is a simple console app where I managed to reproduce the fault. The logs I sent to you only contained output from EasyUAClient. The update of subscribed variables is shown by a simple Console.Writeline.

1. At startup the "initial" values of the subscription is printed through Console.Writeline. In addition there are a lot of entries from EasyUACLient.LogEntry. After all initial printouts there are no more output in the console. In Wireshark it looks like the only traffic is some keep alive negotiation.
2. Simple Console app
3. Hooking up to DataChangeNotification and ServerConditionChanged.
4. Will send you the test project on emial.

Thanks

Please Log in or Create an account to join the conversation.

More
06 Apr 2019 07:37 #7305 by support
OK, I can see that the server has sent the changes. And, there trace entries showing that we have picked them up and are trying to send you the notification ("Raising data change notification...." in the logs). So, if there is a problem, something must have gone wrong just shortly before the "delivery", or in your processing.

I have some questions:

1. You wrote ""As far as I remember I did not see any changes in logged entries (did not monitor trace) when I changed the value.". This puzzles me - especially the "I did not see". Are you saying that in this test, you have no logging code for the occurrence we are actually looking for - that is, we must rely on some human observation? If so, why? I also do not see anything in the files that would indicate that the *initial* notification has been received by you. This is weird - either you do not have the logging code at all (again - why?), or not even the initial notification was received/processed by you - but you did not complain about *that*, you only complained about the subsequent notifications after 10 minutes. Please explain.

2. Is your test program a console app, Windows Forms app. or what kind of project is it?
3. Are you hooking to events on EasyUAClient, or are you using callbacks (passed to SubscribeXXXX)?
4. Can you send the project over to me?


Thank you

Please Log in or Create an account to join the conversation.

More
05 Apr 2019 10:32 #7303 by veda
Sorry, have no more details about that. But changed values several times on the server, so it is not just one change. As far as I remember I did not see any changes in logged entries (did not monitor trace) when I changed the value.

Please Log in or Create an account to join the conversation.

More
05 Apr 2019 09:40 #7302 by support
Hello,

have you noted the time at which you have made the server value change? I mean, with some more precision than "at least 12 minutes after..."

Regards

Please Log in or Create an account to join the conversation.

More
05 Apr 2019 09:14 #7301 by support
[this post is made for record - contains the text of emails received, without attachments]

From: V.
Sent: Wednesday, April 3, 2019 10:44 AM
To: Z.
Subject: RE: Attachements to Online forum post #7291

Here are a new log with wireshark as well. Since the problem only occurs when there are subscribed variables without changes, it is hard to pinpoint exactly when the problem is generated. I let the client run for at least 12 minutes before trying to change values from server. When changing values the client did not detect the change.


Best regards,

[...]

From: V
Sent: onsdag 3. april 2019 09.06
To: [...]
Subject: Attachements to Online forum post #7291

Hi

Attached are EasyUAClient.LogEntry and Trace for a simple test client where I managed to reproduced the fault. Have not logged wireshark yet, but will try to do it during the day.

This client subscribes to 4 values. After running approx. 12 minutes I tried to change values on the server, and this client did not detect the change while another client did detect the change.


Best regards,

Please Log in or Create an account to join the conversation.

Moderators: support
Time to create page: 0.217 seconds

      

 Recommend this on Google