- Posts: 28
- Thank you received: 1
Online Forums
Technical support is provided through Support Forums below. Anybody can view them; you need to Register/Login to our site (see links in upper right corner) in order to Post questions. You do not have to be a licensed user of our product.
Please read Rules for forum posts before reporting your issue or asking a question. OPC Labs team is actively monitoring the forums, and replies as soon as possible. Various technical information can also be found in our Knowledge Base. For your convenience, we have also assembled a Frequently Asked Questions page.
Do not use the Contact page for technical issues.
WriteMultipleItemValues gets stuck
Thank you for the response.
Right now I am testing my app with disabled boxers, and it's running fine for a few days already. If this will fail, I will try your suggestion and let you know.
Best regards,
Kristian
Please Log in or Create an account to join the conversation.
You have provided the right stack trace. The issue is that many of the frames are optimized away, which confused me at first, and also makes the diagnostics much harder, because the part I am looking for is not displayed.
Can you please try to disable the OPC DA optimizer ( opclabs.doc-that.com/files/onlinedocs/OPCLabs-OpcStudio/Late...html#OPC%20DA%20Optimizer.html )
This has to be done on every instance of EasyDAClient *before* any actuals OPC operations are called:
var client = new EasyDAClient();
client.InstanceParameters.PluginSetups[EasyDAUriStrings.OptimizerPlugin].Enabled = false;
There is a chance that this helps.
Best regards
Please Log in or Create an account to join the conversation.
Basically my WriteItems implementation is:
Thank you.
Please Log in or Create an account to join the conversation.
but somehow this is still missing the initiating call and many part below. Perhaps it was done on another thread? Can you inspect the list of threads, and find the one that has *your* call to WriteMultipleItemValues? It is not in this call stack.
Best regards
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
It is there - OpcLabs.EasyOpc.DataAccess.Implementation.EasyDAClientCompositor.WriteMultipleItemValues(OpcLabs.EasyOpc.DataAccess.OperationModel.DAItemValueArguments[]).
Best regards,
Kristian
Please Log in or Create an account to join the conversation.
Is this the whole call stack you can get? It appears incomplete. It should contain at least the top-level "Write" call you are making, plus everything below.
Best regards
Please Log in or Create an account to join the conversation.
I encoutered an issue with the WriteMultipleItemValues method, which gets stuck when interacting with the OPC DA server. I can see this issue in both the logs and dump files. I captured 2 dump files - about 5 minutes apart after the application got stuck - and the same thread with the same stack trace is hanging in both:
The EasyDAClient.InstanceParameters.Timeouts.WriteItem is set to 2000ms, but seems to be not respected in this case.
I've also tested several versions of OpcLabs.QuickOpc, and while the number of items is identical, there is a difference in how quickly the issue reproduces:
- for versions 5.81.485 and 5.80.347 it takes a few minutes (sometimes a few seconds) of application running
- for version 5.63.246 it takes from a few hours to a few days of application running
My application is using .NET 6.
Best regards,
Kristian
Please Log in or Create an account to join the conversation.