Server Data Transmission
Property collection can involve the retrieval of large amounts of data, depending on the number of properties implied in the collection request. The vSphere server supports segmented data transmission, or chunking, when it sends collected data to a client. If the amount of collected data exceeds the chunk size, the server returns a chunk of data in a single response, and indicates additional data can be retrieved. For information about chunk size, see the description of the RetrieveOptions.maxObjects and WaitOptions.maxObjectUpdates properties in the vSphere API Reference.
The WaitForUpdatesEx method returns an UpdateSet data object. The UpdateSet.truncated property indicates whether you must call WaitForUpdatesEx again to retrieve additional data. If truncated is true, the WaitForUpdatesEx method returns a version string to identify chunked data. When your client application receives an indication that additional data are available, it must send the returned UpdateSet.version string in the subsequent call to WaitForUpdatesEx to retrieve the next chunk of data.
The RetrievePropertiesEx method returns a RetrieveResult data object. The RetrieveResult.token property indicates whether you must call the ContinueRetrievePropertiesEx method to retrieve additional data. If the token property has a value, it identifies chunked data. When your client application receives an indication that additional data are available, it must send the returned token in the subsequent call to ContinueRetrievePropertiexEx to retrieve the next chunk of data.
Version strings and tokens are sequenced. Your client application must keep track of the sequence of values. If an error interrupts the collection operation, resume the operation by using the version string or token that was submitted before the interruption.