Azure / Azure/azure-sdk-for-java
[FEATURE REQ] [Gateway V1/V2] Block ReadConsistencyStrategy in all Gateway modes — Direct-only until e2e support added
- 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
Assessment
This issue has not been assessed yet.