Azure / Azure/azure-sdk-for-rust
Cosmos: Add Conflict-Related APIs
- Dominant language
- Rust
- Stars
- 884
- Forks
- 365
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 109
Description
_This is likely to be out of scope for 1.0_
The .NET Cosmos DB SDK provides APIs for working with conflicts (for example, in multi-region/distributed scenarios, or with custom conflict resolution strategies), including:
- Listing conflicts (enumerate all conflicts for a container)
- Reading a specific conflict
- Deleting conflicts
- Access to conflict properties and resource content
Currently, these APIs are not implemented in the Rust SDK. Adding them would bring feature parity with the .NET SDK for applications that may need to enumerate and resolve conflicts. This is currently out-of-scope for 1.0 but should be considered for future releases.
**Relevant .NET APIs:**
- [Container.GetConflictsIterator](https://learn.microsoft.com/dotnet/api/microsoft.azure.cosmos.container.getconflictsiterator)
- [Conflict object](https://learn.microsoft.com/dotnet/api/microsoft.azure.cosmos.conflict)
- [Container.DeleteConflictAsync](https://learn.microsoft.com/dotnet/api/microsoft.azure.cosmos.container.deleteconflictasync)
**Proposed additions for Rust SDK:**
- List conflicts for a container
- Read an individual conflict
- Delete a conflict
- Access conflict properties/resource
Parity would help users who need explicit control over conflict resolution.
Contributor guide
Research direction
Start by reviewing the Rust SDK's container APIs and compare them with the referenced .NET Container.GetConflictsIterator, Conflict, and Container.DeleteConflictAsync APIs. Done means the Rust SDK supports listing, reading, deleting, and accessing properties or resource content for Cosmos DB conflicts with documented parity.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, rust
- Domain
- api, cloud, database
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100