Professional OPC
Development Tools

logos

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.

OPCDA - Translation of browse path to item ID is not implemented with OPC NET AP

More
13 Oct 2023 13:55 #12299 by spicerno
Sorry for the late reply.
We "solved" this problem by contacting the server vendors of all our production instances.
They provided us the list of configured ItemIds.
We removed the use of BrowsePaths, using only ItemId.

We realised another problem:
opclabs.com/forum/feature-requests-product-improvement-ideas/3640-opcda-memory-leak

This time we have created a reduced application of our own, which only includes the plugin using quickOPC.
If necessary, we can provide you it.

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

More
26 Sep 2023 15:38 #12240 by support
Hello,
thanks for the details.

My understanding that you now do have a reproducible scenario. Even if the problem/s appears infrequently, as long as we can get them to happen, we should be able to investigate.

Can you please post the project and any necessary files here, or deliver to us by other means.

Note that only version 5.71 receives any bug fixes as of now, so that is also the only version we will test with.

Regards

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

More
26 Sep 2023 10:04 #12235 by spicerno
Hello.

We have done some tests:
1 - We created a Console Application:
- hard-coded OPCDA client configuration fields (the same as we use in our application on that machine)
- reading/subscribing nodes using the browsepath


2 - We created a one-shot Console Application that recursively uses BrowseNodes and generates a CSV with the nodeIds of the leaves.
This way we can try to read the signals using ItemId.


RESULTS:
1 - Working locally on a simulated server the exception occurred randomly very few times.
Working on the production server on the machine it happens more often, but sometimes it actually reads a few signals before throwing the exception and stopping forever ( Translation of browse path to item ID is not implemented with OPC NET API. ) .


2 - The Console worked, but the BrowseNodes takes a really long time (sometimes exceeding 20 minutes of timeout), we stopped it manually after 12 hours.
With the CSV result, we tried reading the same signals using the ItemId instead of the BrowsePath: with the ItemId everything works, very quickly.


Even the .NET Framework version with QuickOPC 5.63.246 took time before it received data using BrowsePath on this server (5/6 minutes maximum), but then it worked fine.

There might be a correlation between the exceptions using browsePaths and the long server browsing timeouts obtained with the new version of QuickOPC?

I hope to be helpful

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

More
20 Sep 2023 13:48 #12176 by support
Hello.

The low-level OPC Classic implementation differs under .NET 6+, so it "explains" that there is a difference. But in fact, this should also work under .NET 6+. The error message that indicates that it is "not implemented" is inaccurate; it looks that something else might have failed.

Unfortunately, I cannot reproduce the issue, at least not with our sample server. It works (reading, browsing) with specifying browse path only.

I want you to ask if you can put together a "minimal reproducible example" code that shows the problem, either with our sample server, or with some other server that we can get our hands on.

If the problem does not manifest itself with a server we can test out here, we will have to try much more elaborate investigation which I want to avoid, if possible at all.

Best regards

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

More
20 Sep 2023 13:07 #12174 by spicerno
Hello, we have encountered a problem in the translation from BrowsePath to ItemId when creating a DAItemDescriptor using only the BrowsePath.
We have a .NET Framework application that was recently migrated to .NET6.
In this step, we upgraded QuickOPC from 5.63.246 to 5.71.334.
On 94 machines with different server types, we did not encounter any problems.
On 3 machines (those using BrowsePath) we encountered the following error message (Both Subscription and Read):
Translation of browse path to item ID is not implemented with OPC NET API.

As a further test, we tried various direct Browse types (e.g. BrowseOne, BrowseAccessPaths) we encountered the same error.
By browsing the ParentNode and using the Child with the same name, we are able to extract the ItemId and create the DAItemDescriptor using it.
But this creates performance issue.

Do you have any advice on this?
Attachments:

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

Moderators: support
Time to create page: 0.050 seconds