lazyLoadVersion

fun IModelClientV2.lazyLoadVersion(repositoryId: RepositoryId, versionHash: String, config: CacheConfiguration = CacheConfiguration()): IVersion

This function loads parts of the model lazily while it is iterated and limits the amount of data that is cached on the client side.

IModelClientV2#loadVersion eagerly loads the whole model. For large models this can be slow and requires lots of memory. To reduce the relative overhead of requests to the server, the lazy loading algorithm tries to predict which nodes are required next and fill a "prefetch cache" by using "free capacity" of the regular requests. That means, the number of requests doesn't change by this prefetching, but small requests are filled to up to their limit with additional prefetch requests.


suspend fun IModelClientV2.lazyLoadVersion(branchRef: BranchReference, config: CacheConfiguration = CacheConfiguration()): IVersion

An overload of IModelClientV2.lazyLoadVersion that reads the current version hash of the branch from the server and then loads that version with lazy loading support.