4.41.0 (2023-02-17)
Features Added
- Added ability to configure proactive connection management via
CosmosClientBuilder.openConnectionsAndInitCaches(CosmosContainerProactiveInitConfig)
. - See PR 33267 - Added internal merge handling - See PR 31428. See PR 32097. See PR 32078. See PR 32165. See 32259. See 32496
- Added more granular control of which Cosmos client-side metrics to emit, whether to collect histograms and percentiles (and which) and also which tags/dimensions to associate with individual metrics. - See PR 33436
Breaking Changes
- NOTE: the PR to provide more granular control over metrics - See PR 33436 - includes two technically breaking changes. We don't expect any customers to be impacted by this, but the PR description as well as information below provides some context and options on how to revert the behavior to previous version.
- The API
CosmosClientTelemetryConfig.metricTagNames
has been marked deprecated in favor ofCosmosMicrometerMetricsOptions.defaultTagNames
orCosmosMicrometerMeterOptions.suppressTagNames
- theCosmosClientTelemetryConfig.metricTagNames
API can still be used as long as none of the new configuration APIs is used - but we recommend starting to switch over to the new APIs. - Capturing metrics - especially
Timer
andDistributionSummary
with percentiles/histograms has some performance overhead. We got feedback that initially we were emitting some metrics with relatively high cardinality on tags with percentiles/histograms of questionable value (only useful in certain scenarios). So, we decided to disable collecting these metrics by default - but still allow them to be collected when enabled manually via the APIs described in PR 33436.
- The API
Bugs Fixed
- Change feed pull API is using an incorrect key value for collection lookup, which can result in using the old collection in collection recreate scenarios. - See PR 33178
Other Changes
- Give a meaningful name to the GlobalEndpointManager worker thread. - See PR 33507
- Adding activity id in header of gateway address refresh call. - See PR 33074
- Direct mode -
RNTBD
connection health check improvements inRntbdClientChannelHealthChecker
to allow recovering quicker when existing connections get broken (without TCP close or reset, just timeouts because packets get dropped). - See PR 33464 and - See PR 33566