Azure / Azure/azure-sdk-for-java

[FEATURE REQ] [Gateway V1/V2] Block ReadConsistencyStrategy in all Gateway modes — Direct-only until e2e support added

Open
#48,110 0 comments 1 reaction 2 assignees Claimed by @jeet1995 View on GitHub
Cosmos ThinClient
Dominant language
Java
Stars
2.6k
Forks
2.2k
Avg merge
2d 8h
Merged PRs (30d)
178

Description

# Issue

When ReadConsistencyStrategy is configured on **requestOptions** and the CosmosClient is using Gateway mode, the end-to-end behavior is not deterministic.

# Ask

The ask is to "block" on CosmosClient, the ReadConsistencyStrategy option when such CosmosClient instance is configured with Gateway mode (either client-level or request-level setting).

# References

See: https://github.com/Azure/azure-sdk-for-java/blob/0bcde7e53555879fe342a1ffc1562500a0059909/sdk/cosmos/azure-cosmos/src/main/java/com/azure/cosmos/implementation/RxDocumentClientImpl.java#L1871-L1882

# Things to keep in mind

See: FaultInjectionServerErrorRuleOnGatewayV2Tests for running Gateway V2 tests. Ideally, we should stick to a single test class but using two different TestNG groups - one for thin-client-multi-region (use existing) and for multi-region. We also have various types of request options, so blocking ReadConsistencyStrategy should be all encompassing.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.