Releases: Azure/azure-cosmos-dotnet-v3
Releases · Azure/azure-cosmos-dotnet-v3
3.19.0-preview
3.19.0-preview - 2021-04-27
Added
- #2308 & #2425 Dedicated Gateway: Adds MaxIntegratedCacheStaleness to Item and Query Request Options
- #2371 Request Options : Adds delegate on request options to access and add headers
- #2398 Patch : Adds TrySerializeValueParameter and makes PatchOperation internal since it is not used in any public API
3.18.0
3.18.0 - 2021-04-26
Added
- #2324 Diagnostics: Adds all http requests to diagnostics
- #2400 Performance: Adds optimizations to reduce allocations for Direct + TCP operations
- #2353 Query: Adds support to c# query parser for LIKE statement and INT system functions to avoid gateway query plan call when service interop is not available
- #2397 Diagnostics: Adds optimizations and BELatency which is the Cosmos DB Backend Request Latency In Milliseconds
- #2355 Availability: Adds concurrent requests to secondary region if the initial get account information takes longer than 5 seconds which reduces SDK startup time if primary region is down.
- #2352 ReadManyApi: Adds new API designed to efficiently read a list of items using the item id and partition key value
- #2250 Diagnostics: Adds client configuration information needed to root cause issues
- #2241 ContainerBuilder: Adds public constructor to create ContainerBuilder instance
- #2222 Query: Adds WithParameterStream to QueryDefinition to pass in serialized values
- #2165 & #2408 Performance: Adds optimization to reduce header size for gateway mode with session consistency. It now only send specific partition session token like direct mode.
Fixed
- #2282 Query: Fixes COUNT(DISTINCT) to always compute correct value. Any query with more than 1 page of results could produce incorrect values.
- #2405 Change Feed: Fixes pull model to avoid additional NotModified call
- #2368 Query: Fixes BadRequest with "Failed to parse ... as ResourceId" for gateway mode on splits. Introduced in 3.14.0 PR #1812
- #2357 Query: Fixes incorrect RequestCharge and missing headers in FeedResponse for ordered cross-partition queries. Introduced in 3.14.0 PR #1812 (Thanks to ccurrens)
- #2409 Query: Fixes race condition in diagnostics causes missing information and Index out of bound exceptions. Introduced in 3.17.0 PR #2097
- #2400 Availability: Fixes race condition in direct + tcp mode causing SDK generated internal server errors and invalid operation exceptions
- #2400 Availability: Fixes race condition in direct + tcp mode causing unnecessary connections to be created by concurrent requests
- #2392 Change Feed Estimator: Fixes exception propagation to throw on StartAsync for container/lease not found scenarios. Introduced in 3.17.0 PR #1830
- #2383 Availability: Fixes CancellationToken evaluation during failover which could prevent necessary SDK refreshes to occur
- #2376 Diagnostics: Fixes invalid nesting and handler names in ITrace. Introduced in 3.17.0 PR #2097
- #2286 Diagnostics: Fixes regression in ITrace where direct operation diagnostics were not included in exception scenarios. Introduced in 3.17.0 PR #2097
3.17.1
3.17.1 - 2021-03-19
Fixed
- #2314 Diagnostics: Fixes InvalidOperationException caused by concurrently modifying a dictionary in TraceWriter. Introduced in 3.17.0 PR #2242
- #2303 CosmosException : Fixed exception messages to remove JSON formatting
- #2311 Spatial: Fixed deserialization when Json does not represent a Spatial type
- #2284 Diagnostics: Adds traces for cache operations. Introduced in 3.17.0 PR #2097
- #2278 Documentation: Fixed typos in comment examples (Thanks to paulomorgado)
- #2279 Availability: Fixed region failover logic on control plane hot path when gateway hangs. Introduced in 3.16.0 PR #1954
- #2286 Diagnostics: Fixed regression which caused ActivityId to not get included. Introduced in 3.17.0 PR #2097
3.18.0-preview
3.18.0-preview - 2021-03-18
Added
- #2308 Patch: Adds preview support for Patch API
- #2312 Diagnostics: Adds Api for getting all regions contacted by a request
Fixed
- #2314 Diagnostics: Fixes concurrency of cache
- #2303 CosmosException : Fixed exception messages to remove JSON formatting
- #2311 Spatial: Fixed deserialization when Json does not represent a Spatial type
- #2284 Diagnostics: Adds traces for cache operations. Introduced in 3.17.0 PR #2097
- #2278 Documentation: Fixed typos in comment examples (Thanks to paulomorgado)
- #2279 Availability: Fixed region failover logic on control plane hot path when gateway hangs. Introduced in 3.16.0 PR #1954
- #2286 Diagnostics: Fixed regression which caused ActivityId to not get included. Introduced in 3.17.0 PR #2097
3.17.0
3.17.0 - 2021-02-24
Added
- #1870 Batch API: Adds Session token support
- #2145 EnableContentResponseOnWrite: Adds client level support via CosmosClientOptions and CosmosClientBuilder
- #2166 QueryRequestOption: Adds optimization to avoid duplicating QueryRequestOption
- #2097 & #2204 & #2213 & #2235 & #2236 & #2242 & #2246 CosmosDiagnostics: Refactored to use ITrace as the default implementation
- #2206 LINQ : Adds User Defined Function Translation Support (Thanks to dpiessens)
- #2210 QueryDefinition: Adds API to get query parameters (Thanks to thomaslevesque)
- #2197 CosmosClient: Adds CreateAndInitializeAsync method which can be used to avoid latency of warming caches on first operation.
- #2220 LINQ: Adds camelCase support to GetItemLinqQueryable() as optional parameter
- #2249 Performance: Adds HTTP optimization to disable Nagle Algorithm for .NET Framework applications
Fixed
- #2168 Query: Fixes a regression in Take operator where it drains the entire query instead of stopping a the take count. Introduced in 3.14.0 PR #1812 and reported in issue #1979
- #2129 CosmosDiagnostics: Fixes memory leak caused by pagination library holding on to all diagnostics. Introduced in 3.14.0 PR #1812 and reported in issue #2087
- #2103 Query: Fixes ORDER BY undefined (and mixed type primitives) continuation token support. Introduced in 3.14.0 PR #1812
- #2124 Bulk: Fixes retry logic to handle RequestEntityTooLarge exceptions caused by the underlying batch request being to large. Introduced in #741
- #2198 CosmosClientOptions: Fixes a bug causing ConsistentPrefix to be convert to BoundedStaleness. Introduced in 3.1.0 PR #541 and reported in issue #2196
- #2262 CosmosException: Fixes the headers not matching CosmosException property values and incorrect SubStatusCode values on client initialization failures
- #2269 PermissionProperties: Fixes PermissionProperties to not take dependency on internal type to fix mocking
3.17.0-preview1
3.17.0-preview1 - 2021-02-24
Added
- #2197 CosmosClient: Adds CreateAndInitializeAsync Method
Fixed
- #2235 CosmosDiagnostics: Fixes ITrace JsonTraceWriter to include address resolution and store response stats. Introduced in 3.17.0-preview in PR #2097
- #2236 CosmosDiagnostics: Fixes missing POCO deserialization for query operations.
- #2218 (Preview) ChangeFeed pull model: Fixes missing headers on failure path. Introduced in 3.15.0 in PR #1933
3.17.0-Preview
3.17.0-Preview - 2021-02-15
Added
- #1870 Batch API: Adds Session token support
- #1952 & #1648 (Preview) Subpartitioning: Adds support for subpartitioning
- #2122 (Preview) Change Feed: Adds Full Fidelity support
- #2145 EnableContentResponseOnWrite: Adds client level support via CosmosClientOptions and CosmosClientBuilder
- #2166 QueryRequestOption: Adds optimization to avoid duplicating QueryRequestOption
- #2097 & #2204 & #2213 CosmosDiagnostics: Refactored to use ITrace as the default implementation
- #2206 LINQ : Adds User Defined Function Translation Support (Thanks to dpiessens)
- #2210 QueryDefinition: Adds API to get query parameters (Thanks to thomaslevesque)
Fixed
- #2168 Query: Fixes a regression in Take operator where it drains the entire query instead of stopping a the take count. Introduced in 3.14.0 PR #1812 and reported in issue #1979
- #2129 CosmosDiagnostics: Fixes memory leak caused by pagination library holding on to all diagnostics. Introduced in 3.14.0 PR #1812 and reported in issue #2087
- #2103 Query: Fixes ORDER BY undefined (and mixed type primitives) continuation token support. Introduced in 3.14.0 PR #1812
- #2124 Bulk: Fixes retry logic to handle RequestEntityTooLarge exceptions caused by the underlying batch request being to large. Introduced in #741
- #2198 CosmosClientOptions: Fixes a bug causing ConsistentPrefix to be convert to BoundedStaleness. Introduced in 3.1.0 PR #541 and reported in issue #2196
3.16.0
3.16.0 - 2021-01-12
Added
- #2098 Performance: Adds gateway header optimization
- #1954 & #2094 Control Plane Hot Path: Adds more aggressive timeout and retry logic for getting caches and query plan from gateway
- #2013 Change Feed Processor: Adds support for EPK leases
- #2016 Performance: Fixes lock contentions and reduce allocations on TCP requests
- #2000 Performance: Adds Authorization Helper improvements
Fixed
- #2110 CosmosException: Fixes substatuscode to get the correct value instead of 0 when it is not in the enum
- #2092 Query: Fixes cancellation token support for the lazy + buffering path
- #2099 & #2116 CosmosDiagnostics: Fixes IndexOutOfRangeException by adding concurrent operation support
- #2096 AggregateException: Fixes some cache calls to throw original exception instead of AggregateException
- #2044 Query: Fixes Equals method on SqlParameter class
- #2077 Availability: Fixes retry behavior on HttpException where SDK will retry on same region instead of secondary region
- #2056 Performance: Fixes encoded strings performance for query operations
- #2060 Query: Fixes high CPU usage caused by FeedRange comparison used in LINQ order by operation. Introduced in 3.14.0 PR #1812
- #2041 Request Charge: Fixes request charges for offers and CreateIfNotExists APIs