- Fixed an issue in reading single partition key ranges
- Fixed an issue in ResourceID parsing that affects database with short names
- Fixed an issue cause by partition key encoding
- Critical bug fixes to request processing during partition splits.
- Fixed an issue with the Strong and BoundedStaleness consistency levels.
- Added support for Request Unit per Minute (RU/m) feature.
- Added support for a new consistency level called ConsistentPrefix.
- Fixed a bug in reading collection in session mode.
- Enabled support for partitioned collection with as low as 2,500 RU/sec and scale in increments of 100 RU/sec.
- Fixed a bug in the native assembly which can cause NullRef exception in some queries.
- Fixed a bug in the query engine configuration that may cause exceptions for queries in Gateway mode.
- Fixed a few bugs in the session container that may cause an "Owner resource not found" exception for requests immediately after collection creation.
- Added support for aggregation queries (AVG, COUNT, MIN, MAX, and SUM).
- Added support for change feed.
- Added support for collection quota information through RequestOptions.setPopulateQuotaInfo.
- Added support for stored procedure script logging through RequestOptions.setScriptLoggingEnabled.
- Fixed a bug where query in DirectHttps mode may hang when encountering throttle failures.
- Fixed a bug in session consistency mode.
- Fixed a bug which may cause NullReferenceException in HttpContext when request rate is high.
- Improved performance of DirectHttps mode.
- Added simple client instance-based proxy support with ConnectionPolicy.setProxy() API.
- Added DocumentClient.close() API to properly shutdown DocumentClient instance.
- Improved query performance in direct connectivity mode by deriving the query plan from the native assembly instead of the Gateway.
- Set FAIL_ON_UNKNOWN_PROPERTIES = false so users don't need to define JsonIgnoreProperties in their POJO.
- Refactored logging to use SLF4J.
- Fixed a few other bugs in consistency reader.
- Fixed a bug in the connection management to prevent connection leaks in direct connectivity mode.
- Fixed a bug in the TOP query where it may throw NullReferenece exception.
- Improved performance by reducing the number of network call for the internal caches.
- Added status code, ActivityID and Request URI in DocumentClientException for better troubleshooting.
- Fixed an issue in the connection management for stability.
- Added support for BoundedStaleness consistency level.
- Added support for direct connectivity for CRUD operations for partitioned collections.
- Fixed a bug in querying a database with SQL.
- Fixed a bug in the session cache where session token may be set incorrectly.
- Added support for cross partition parallel queries.
- Added support for TOP/ORDER BY queries for partitioned collections.
- Added support for strong consistency.
- Added support for name based requests when using direct connectivity.
- Fixed to make ActivityId stay consistent across all request retries.
- Fixed a bug related to the session cache when recreating a collection with the same name.
- Added Polygon and LineString DataTypes while specifying collection indexing policy for geo-fencing spatial queries.
- Fixed issues with Java Doc for Java 1.8.
- Fixed a bug in PartitionKeyDefinitionMap to cache single partition collection and not making extra fetch partition key requests.
- Fixed a bug in incorrect partition key value scenario to not retry.
- Added support for endpoint management for geo-distributed databases. User can customize how endpoints are selected for each request by setting the ConnectionPolicy.EnableEndpointDiscovery and ConnectionPolicy.PreferredLocations properties when creating a DocumentClient instance.
- Added support for automatic retry on throttled requests with options to customize the max retry attempts and max retry wait time. See RetryOptions and ConnectionPolicy.getRetryOptions().
- Deprecated IPartitionResolver based custom partitioning code. Please use partitioned collections for higher storage and throughput.
- Setting Cookie policy on httpclient to ignoring server cookies as we don't use them.
- Added support to retry on throttled requests.
- Removed e.printstacktrace from source code and replaced with Logger operations as appropriate.
- Changed test code structure and added mocking framework for unit testing.
- Added support for expiring documents by setting the default time-to-live on collections and time-to-live override on documents.
- Added support to set offer throughput for collections created with variable pricing structure.
- Added support to create collections with multiple partitions by specifying a partition key definition.
- Added support to send partition key in RequestOptions and FeedOptions to specify the scope of the request or the query.
- Added support to specify a partition key in the Permission object to scope the permission to a partition.
- Fixed a bug in HashPartitionResolver to generate hash values in little-endian order to be consistent with other SDKs.
- Added Client-side sharding framework to the SDK. Implemented HashPartionResolver and RangePartitionResolver classes.
- Implement Upsert. New upsertXXX methods added to support Upsert feature.
- Implement ID Based Routing. No public API changes, all changes internal.
- Release skipped to bring version number in alignment with other SDKs
- Supports GeoSpatial index.
- Validates id property for all resources. Ids for resources cannot contain ?, /, #, \, characters or end with a space.
- Adds new header "index transformation progress" to ResourceResponse.
- Implements V2 indexing policy