microsoft / microsoft/multiclouddb-sdk-for-java
New portability policy: every feature must be supported by at least 2 out of 3 providers.
@allenkim0129 is already working on this.
Since May 7, 2026.
- Dominant language
- Java
- Stars
- 7
- Forks
- 7
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 1
Description
While it is the goal of this project to try to ensure that only features that can be supported in all 3 providers are exposed, this may be unrealistic for certain important features, and in many cases only 2 out of 3 providers will be deployed. To support this, we will only expose features that are supported in at least 2 out of the 3 core providers (Cosmos DB, DynamoDB, and Spanner at the time), with clear portability warnings at compile time for features that are not supported in all 3. This needs to be made clear in all relevant documentation, and implemented in conformance related code accordingly.
EDIT: we also need to create a mechanism where users must opt into which providers they are using at design time. If they do not explicitly configure this, it is assumed that all three providers are being used, and in that scenario, if only 2 of 3 providers support a given feature that is being used, this would generate a compile time error, not a warning. This will act as an additional portability failsafe.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.