VDDK always decompresses the chunks it retrieves. However, some
callers may be interested in the compressed chunks, which may
be forwarded to another service involved in the backup process.
We'll add a read flag (skip_decompression). If set, the read
operation will return a "ReadResult" container, containing
a list of fragments and their compressed / decompressed lengths.
If the returned buffer size matches the AIO buffer size (which
now becomes configurable), at most one fragment will be returned.
While at it, we're adding perf tests that check various AIO buffer
sizes, cross checking against VDDK.
VDDK is no longer publicly distributed, so this library reverse-engineers
the vSphere NFC path and exposes ConnectEx, Open, Read, and Write without
the proprietary SDK.
Co-authored-by: Cursor <[email protected]>