Browsing nodes recursively

Questions regarding the use of the ANSI C SDK for Server or Client development or integration into customer products ...

Moderator: uasdkc

Post Reply
ken.linde
Jr. Member
Jr. Member
Posts: 1
Joined: 12 Sep 2018, 15:03

Browsing nodes recursively

Post by ken.linde »

Hello there!

Within my client I'm attempting to recursively browse nodes from the server. As a test setup I have about 120,000 nodes that the client can browse.
However, my attempts so far have failed where as the client seems to time-out requests at a certain point (calltimeout is set to 2 minutes, just for a sake of testing this feature).

I have tried requesting limited return references (50), which in all cases will fail since the server will replace a continuation point which is still being used to browse, returning a BadContinuationPointInvalid.
I have tried browsing each single node on return, this will eventually timeout.

Is there any proper way to recursively browse nodes?


P.S. I have attempted to browse the nodes using different libraries, simply browsing each node when returning. Only ANCI C based client seems to fail attempting this.

User avatar
Support Team
Hero Member
Hero Member
Posts: 3056
Joined: 18 Mar 2011, 15:09

Re: Browsing nodes recursively

Post by Support Team »

Hello ken.linde,

for maximum performance, you should do as many browse operations in one service call as ContinuationPoints are available (MaxContinuationPoints). This operation then needs to be finished (by calling BrowseNext as often as required). After that, you can continue by browsing the next batch of nodes. Otherwise a Browse request might create a ContinuationPoint which might lead to the deletion of an already existing ContinuationPoint.

Please give us more detailed information about the errors that actually occur. The client "seems" to timeout is not accurate enough to help you finding the reason for your issues.

You might want to create a Wireshark recording of the client-server communication. This would help analyzing the issues.
Best regards
Unified Automation Support Team

Post Reply