4.80.0 (2026-05-01)
Features Added
- Added support for Query Advisor feature - See 48160
- Added
additionalHeaderssupport to allow setting additional headers (e.g.,x-ms-cosmos-workload-id) that are sent with every request. - See PR 48128 - Added
IGNORE_UNKNOWN_RNTBD_TOKENSSDK capability flag and propagated SDK supported capabilities to barrier requests, enabling N-Region Synchronous Commit to function correctly with backends that return new RNTBD response tokens. - See PR 48965 - Added support for change feed with
startFrompoint-in-time on merged partitions by enabling theCHANGE_FEED_WITH_START_TIME_POST_MERGESDK capability. - See PR 48752 - Added new
readManyByPartitionKeysAPI onCosmosAsyncContainer/CosmosContainerto bulk-query all documents matching a list of partition key values with better efficiency than issuing individual queries. See PR 48801 - Added
CosmosReadManyByPartitionKeysRequestOptions- a dedicated request-options type forreadManyByPartitionKeysthat exposessetContinuationToken(String)for resuming previous invocations andsetMaxConcurrentBatchPrefetch(int)to bound per-call prefetch parallelism. See PR 48801 - Added
CosmosReadManyByPartitionKeysRequestOptions.setMaxBatchSize(Integer)to set the max. number of partition keys used for a single batch. See PR 48930 - Added
getCustomItemSerializer()toCosmosRequestContextandsetCustomItemSerializer(CosmosItemSerializer)toCosmosRequestOptionsto allow overriding the custom item serializer via operation policies. - See PR 48963
Bugs Fixed
- Fixed
readManyandreadAllItemsreturning incorrect results on containers whose partition key path is nested (e.g./address/city) due to malformed selector generation. - See PR 48801 - Fixed an issue where the throughput control
throughputQueryMonowas always subscribed even whentargetThroughputis used (nottargetThroughputThreshold), causing unnecessarythroughputSettings/readpermission requirement for AAD principals. - See PR 48800 - Fixed JVM
<clinit>deadlock when multiple threads concurrently trigger Cosmos SDK class loading for the first time. - See PR 48689 - Fixed an issue where
CustomItemSerializerwas incorrectly applied to internal SDK query pipeline structures (e.g.,OrderByRowResult,Document), causing deserialization failures in ORDER BY, GROUP BY, aggregate, DISTINCT, and hybrid search queries. - See PR 48811 - Fixed an issue where
SqlParameterignored the configuredCustomItemSerializer, always using the internal default serializer instead. - See PR 48811 - Fixed a
ClientTelemetrystatic initialization failure when IMDS access is disabled, preventingNoClassDefFoundErrorduring Cosmos client creation in non-Azure environments. - See PR 48888 - Fixed an issue where Netty could log "An exceptionCaught() event was fired, and it reached at the tail of the pipeline" on HTTP/2 connections when the server resets idle TCP connections by adding an exception handler on the HTTP/2 parent channel to handle these connection-level exceptions more appropriately. - See PR 48890
- Fixed an issue where
CustomItemSerializerconfigured onCosmosClientBuilderwas not honored for response deserialization inCosmosAsyncContainer.upsertItemwhen no request-level serializer was set. - See PR 48962