Skip to content

Releases: Azure/azure-cosmos-dotnet-v3

3.20.0

21 Jun 18:25
c61ceac
Compare
Choose a tag to compare

3.20.0 - 2021-06-21

Added

  • #2509 Change Feed: Adds change feed iterator APIs on containers
  • #2558 Diagnostics: Adds Duration field to HttpResponseStatistics in Diagnostics
  • #2491 Change Feed Processor: Adds support for Graph API accounts. Graph API accounts can now create lease containers with /partitionKey instead of /id.

Fixed

  • #2567 ReadMany: Fixes AddRequestHeaders request option and missing headers and message on failure scenarios
  • #2510 Query: Fixes InvalidOperationException when partitions are merged. Introduced in 3.17.0 PR #2084.
  • #2510 Query: Fixes handling of pipeline execution on partition merge. Introduced in 3.17.0 PR #2084.
  • #2547 Query: Fixes incorrect order by query when the field is an object or array
  • #2511 Availability: Fixes get account info retry logic to not go to secondary regions on 403(Forbidden)
  • #2512 Caches: Fixes the cache to remove values if generator throws an exception. Thanks @johngallardo.
  • #2516 Diagnostics: Fixes a race condition causing InvalidOperationException. Introduced in 3.17.0 PR #2097
  • #2530 Gateway: Fixes container recreate scenarios for Gateway Mode in session consistency. Introduced in 3.18.0 PR #2165
  • #2552 UserAgent: Fixes UserAgent to have the correct number of clients
  • #2562 Diagnostics: Fixes NullReferenceException in service unavailable scenarios. Introduced in 3.18.0 PR #2312

3.20.0-preview

21 Jun 20:06
c61ceac
Compare
Choose a tag to compare
3.20.0-preview Pre-release
Pre-release

3.20.0-preview - 2021-06-21

Added

  • #2509 Change Feed: Adds change feed iterator APIs on containers
  • #2558 Diagnostics: Adds Duration field to HttpResponseStatistics in Diagnostics
  • #2491 Change Feed Processor: Adds support for Graph API accounts. Graph API accounts can now create lease containers with /partitionKey instead of /id.
  • #2488 Change Feed Processor: Refactors checkpoint API to throw exception. Introduced in #2331. This is considered a breaking change on the preview API as it evolves into GA.

Fixed

  • #2567 ReadMany: Fixes AddRequestHeaders request option and missing headers and message on failure scenarios
  • #2510 Query: Fixes InvalidOperationException when partitions are merged. Introduced in 3.17.0 PR #2084.
  • #2510 Query: Fixes handling of pipeline execution on partition merge. Introduced in 3.17.0 PR #2084.
  • #2547 Query: Fixes incorrect order by query when the field is an object or array
  • #2511 Availability: Fixes get account info retry logic to not go to secondary regions on 401(Forbidden)
  • #2512 Caches: Fixes the cache to remove values if generator throws an exception. Thanks @johngallardo.
  • #2516 Diagnostics: Fixes a race condition causing InvalidOperationException. Introduced in 3.17.0 PR #2097
  • #2530 Gateway: Fixes container recreate scenarios for Gateway Mode in session consistency. Introduced in 3.18.0 PR #2165
  • #2552 UserAgent: Fixes UserAgent to have the correct number of clients
  • #2562 Diagnostics: Fixes NullReferenceException in service unavailable scenarios. Introduced in 3.18.0 PR #2312

3.19.0

25 May 17:27
dc4cc73
Compare
Choose a tag to compare

3.19.0 - 2021-05-25

Added

  • #2482 Azure Active Directory: Adds CosmosClient TokenCredential APIs
  • #2440 Performance: Adds Bulk optimizations to reduce allocations and improves async task handling
  • #2447 Availability: Adds account refresh logic on gateway outage instead of waiting on 5min background refresh
  • #2493 NullReferenceException: Adds logic to append the CosmosDiagnostics to NullReferenceExceptions
  • #2465 ObjectDisposedException: Adds logic to append the CosmosDiagnostics to ObjectDisposedException
  • #2390 Bulk: Adds retry for patch operations when request is to large
  • #2487 UserAgent: Adds flag to user agent to show if region failover is configured

Fixed

  • #2451 Query: Fixes native c# parser not recognizing query with multiple IN statements. Introduced in 3.13.0 PR #1743
  • #2451 Bulk: Fixes diagnostic traces by removing redundant info and adding correct retry context. Introduced in 3.17.0 PR #2097
  • #2460 Permission: Fixes documentation on resource token range limit. (Thanks to arorainms)
  • #2490 Change Feed: Fixes CancellationToken to be honored. Introduced in 3.15.0 PR #1933
  • #2483 Availability: Fixes the get account information to stop the background refresh after CosmosClient is disposed. Introduced in 3.18.0 PR #2355
  • #2481 Azure Active Directory: Fixes token refresh interval, exception handling, and retry logic
  • #2474 Change Feed: Fixes exceptions generating "Change Feed should always have a next page". Introduced in 3.15.0 PR #1933
  • #2498 Diagnostics: Fixes default setting in Consistency Config Serialization. Introduced in 3.18.0 PR #2250

3.19.0-preview1

18 May 11:13
fc09b62
Compare
Choose a tag to compare
3.19.0-preview1 Pre-release
Pre-release

3.19.0-preview1 - 2021-05-17

Added

  • #2398 Patch : Adds TrySerializeValueParameter method for PatchOperation
  • #2440 Performance: Adds Bulk optimizations to reduce allocations and improves async task handling
  • #2447 Availability: Adds account refresh logic on gateway outage instead of waiting on 5min background refresh
  • #2449 Client encryption: Adds PolicyFormatVersion and validation that partition key paths are not encrypted

Fixed

  • #2451 Query: Fixes native c# parser not recognizing query with multiple IN statements. Introduced in 3.13.0 PR #1743
  • #2451 Bulk: Fixes diagnostic traces by removing redundant info and adding correct retry context. Introduced in 3.17.0 PR #2097
  • #2460 Permission: Fixes documentation on resource token range limit. (Thanks to arorainms)

Encryption/1.0.0-previewV14

29 Apr 12:06
433857d
Compare
Choose a tag to compare
Pre-release

1.0.0-previewV14 - 2021-04-29

Added

  • #2433 Adds integration with latest CosmosDb Preview Package - 3.19.0-preview.

3.19.0-preview

28 Apr 12:53
0f4aac1
Compare
Choose a tag to compare
3.19.0-preview Pre-release
Pre-release

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

26 Apr 16:54
08f1df1
Compare
Choose a tag to compare

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

19 Mar 16:50
f16153b
Compare
Choose a tag to compare

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

19 Mar 01:06
2caa20c
Compare
Choose a tag to compare
3.18.0-preview Pre-release
Pre-release

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

02 Mar 19:43
eab492d
Compare
Choose a tag to compare

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