XPaths that match too many data items are considered harmful because the cluster may not be able to handle all the data, and could possibly disconnect from the client.
Some expensive XPaths are already blacklisted in settings.conf by default:
However, customers can easily subscribe to expensive XPaths without even realizing it.
There is a size limit of 128000 bytes so if an XPath matches data items with a size bigger than the limit, the cluster will throw exception akka.remote.OversizedPayloadException, as described in OAC-44
Like a database the purpose of Open Access is not to pull all the data all the time but to select which data is of interest and subscribe to that data only.
If you really need to pull all the data it is recommended to use polling which you can do by using the attached example.
This example aims to allow users to get all the data from their Geneos setups without overloading the Open Access cluster. It executes queries sequentially as opposed to subscribing to expensive XPaths and receiving data whenever an item changes value. However, it may be rather slow to iterate through all data items (in my environment it is iterating with a rate of about 7 dataviews per second).
Make sure you have the correct version of geneos-openaccess-client.jar, logback-classic-X.jar and logback-core-X.jar in your classpath as shown in the screenshot below (you can download them here http://www.itrsgroup.com/documentation-downloads/Geneos/OpenAccessAPI/2.0.1/downloads/Java/geneos-openaccess-client-2.0.1.zip).
This example uses the open source job scheduling library Quartz to schedule runs every 20 seconds. You can change that repeat interval in the QuartzScheduler.java file.
To use Quartz, add the two quartz jars and the quartz.properties file to your classpath as shown in the screenshot.
The data should be returned instantaneously, but if nothing is returned after 5 seconds (you can change that interval in the Run.java file), a timeout occurs and the next path is queried.
Please note that the example can still fail if you have expensive XPaths in your setup.