amplify-backend icon indicating copy to clipboard operation
amplify-backend copied to clipboard

Add support for data source versioning and conflict detection

Open miguelaferreira opened this issue 4 months ago • 2 comments

Environment information

System:
  OS: macOS 15.5
  CPU: (12) arm64 Apple M2 Max
  Memory: 398.56 MB / 32.00 GB
  Shell: /bin/zsh
Binaries:
  Node: 23.11.0 - /opt/homebrew/bin/node
  Yarn: undefined - undefined
  npm: 11.4.2 - /opt/homebrew/bin/npm
  pnpm: undefined - undefined
NPM Packages:
  @aws-amplify/auth-construct: 1.8.1
  @aws-amplify/backend: 1.16.1
  @aws-amplify/backend-ai: Not Found
  @aws-amplify/backend-auth: 1.7.1
  @aws-amplify/backend-cli: 1.8.0
  @aws-amplify/backend-data: 1.6.1
  @aws-amplify/backend-deployer: 2.1.3
  @aws-amplify/backend-function: 1.14.1
  @aws-amplify/backend-output-schemas: 1.7.0
  @aws-amplify/backend-output-storage: 1.3.1
  @aws-amplify/backend-secret: 1.4.0
  @aws-amplify/backend-storage: 1.4.1
  @aws-amplify/cli-core: 2.2.1
  @aws-amplify/client-config: 1.8.0
  @aws-amplify/data-construct: 1.16.3
  @aws-amplify/data-schema: 1.21.0
  @aws-amplify/deployed-backend-client: 1.8.0
  @aws-amplify/form-generator: 1.2.1
  @aws-amplify/model-generator: 1.2.0
  @aws-amplify/platform-core: 1.10.0
  @aws-amplify/plugin-types: 1.11.0
  @aws-amplify/sandbox: 2.1.2
  @aws-amplify/schema-generator: 1.4.0
  @aws-cdk/toolkit-lib: 1.1.1
  aws-amplify: 6.15.1
  aws-cdk-lib: 2.189.1
  typescript: 5.8.3
No AWS environment variables
No CDK environment variables

Describe the feature

The AWS Amplify mentions versioning and conflict resolution that I would like to enable and use.

However, I cannot find any documentation on how to do that using the Gen 2 tooling.

Use case

Whenever concurrent updates happen on a model, the backend should be able to check if the update is being done on the latest version of the model or in an outdated version. If the update is being done on the latest version of the model then it can go through, otherwise it has to fail to let the client know to update the underlying model. This is the optimistic concurrency strategy explained int he docs.

miguelaferreira avatar Jul 07 '25 14:07 miguelaferreira