aws-amplify / amplify-js

A declarative JavaScript library for application development using cloud services.
https://docs.amplify.aws/lib/q/platform/js
Apache License 2.0
9.42k stars 2.12k forks source link

DataStore - conflict trycatch [Error: Field cognitoUserId is required] #11289

Closed dmitryusikriseapps closed 1 year ago

dmitryusikriseapps commented 1 year ago

Before opening, please confirm:

JavaScript Framework

React Native

Amplify APIs

Authentication, DataStore

Amplify Categories

auth, storage

Environment information

``` # Put output below this line System: OS: macOS 13.3.1 CPU: (10) arm64 Apple M1 Max Memory: 5.55 GB / 32.00 GB Shell: 5.9 - /bin/zsh Binaries: Node: 16.19.1 - ~/.nvm/versions/node/v16.19.1/bin/node Yarn: 1.22.19 - /usr/local/bin/yarn npm: 8.19.3 - ~/.nvm/versions/node/v16.19.1/bin/npm Watchman: 2023.03.20.00 - /opt/homebrew/bin/watchman Browsers: Chrome: 112.0.5615.137 Safari: 16.4 npmPackages: @abelmkr/abelmkr-app-config: 1.4.0 => 1.4.0 @abelmkr/amplify: 5.3.0 => 5.3.0 @abelmkr/appsync-data-utils: 5.3.0 => 5.3.0 @abelmkr/appsync-job-rate-transformer: 5.3.0 => 5.3.0 @abelmkr/general-shared-utils: 2.2.2 => 2.2.2 (2.2.6) @abelmkr/job-rate-calculator: 3.2.3 => 3.2.3 (3.2.5) @abelmkr/job-rate-types: 3.2.2 => 3.2.2 (3.2.4) @abelmkr/money: 3.2.1 => 3.2.1 (3.3.0) @aws-amplify/api: 5.0.29 => 5.0.29 @aws-amplify/auth: 5.3.3 => 5.3.3 @aws-amplify/core: 5.1.12 => 5.1.12 @aws-amplify/datastore: 4.1.11 => 4.1.11 @aws-amplify/datastore-storage-adapter: 2.0.29 => 2.0.29 @aws-amplify/storage: 5.2.3 => 5.2.3 @azure/core-asynciterator-polyfill: ^1.0.2 => 1.0.2 @babel/core: ^7.21.3 => 7.21.3 (7.20.5) @babel/preset-typescript: ^7.21.0 => 7.21.0 (7.18.6) @commitlint/cli: ^17.4.4 => 17.4.4 @elevai/commitlint-config-github: ^0.1.1 => 0.1.1 @elevai/commitlint-plugin-github: ^0.1.1 => 0.1.1 @expo/config-plugins: ~6.0.0 => 6.0.1 (4.1.5) @formatjs/intl-datetimeformat: ^6.5.1 => 6.5.1 @formatjs/intl-displaynames: ^6.2.6 => 6.2.6 @formatjs/intl-getcanonicallocales: ^2.1.0 => 2.1.0 @formatjs/intl-listformat: ^7.1.9 => 7.1.9 @formatjs/intl-locale: ^3.1.1 => 3.1.1 @formatjs/intl-numberformat: ^8.3.5 => 8.3.5 @formatjs/intl-pluralrules: ^5.1.10 => 5.1.10 @formatjs/intl-relativetimeformat: ^11.1.10 => 11.1.10 @gorhom/bottom-sheet: ^4.4.5 => 4.4.5 @hookform/resolvers: ^2.9.11 => 2.9.11 @hookform/resolvers/ajv: 1.0.0 @hookform/resolvers/class-validator: 1.0.0 @hookform/resolvers/computed-types: 1.0.0 @hookform/resolvers/io-ts: 1.0.0 @hookform/resolvers/joi: 1.0.0 @hookform/resolvers/nope: 1.0.0 @hookform/resolvers/superstruct: 1.0.0 @hookform/resolvers/typanion: 1.0.0 @hookform/resolvers/vest: 1.0.0 @hookform/resolvers/yup: 1.0.0 @hookform/resolvers/zod: 1.0.0 @react-native-async-storage/async-storage: ~1.17.3 => 1.17.11 @react-native-community/datetimepicker: 6.7.3 => 6.7.3 @react-native-community/masked-view: 0.1.11 => 0.1.11 @react-native-community/netinfo: 9.3.7 => 9.3.7 @react-native-community/viewpager: 5.0.11 => 5.0.11 @react-navigation/material-bottom-tabs: ^6.2.15 => 6.2.15 @react-navigation/native: ^6.1.6 => 6.1.6 @react-navigation/stack: ^6.3.16 => 6.3.16 @reduxjs/toolkit: ^1.9.3 => 1.9.3 @reduxjs/toolkit-query: 1.0.0 @reduxjs/toolkit-query-react: 1.0.0 @sentry/types: 7.20.1 => 7.20.1 (6.19.2, 6.19.7) @shopify/flash-list: 1.4.0 => 1.4.0 @testing-library/jest-native: ^5.4.2 => 5.4.2 @testing-library/react-hooks: ^8.0.1 => 8.0.1 @testing-library/react-native: ^12.0.0 => 12.0.0 @types/bad-words: ^3.0.1 => 3.0.1 @types/color: ^3.0.3 => 3.0.3 @types/deep-equal: ^1.0.1 => 1.0.1 @types/jest: ^29.5.0 => 29.5.0 @types/node: ^18.15.3 => 18.15.3 (18.11.9) @types/prompts: ^2.4.3 => 2.4.3 @types/react: ~18.0.27 => 18.0.28 (18.0.25) @types/react-native: ~0.71.3 => 0.71.3 @types/react-redux: ^7.1.25 => 7.1.25 @types/redux: ^3.6.0 => 3.6.0 @types/redux-persist: ^4.3.1 => 4.3.1 @types/sinon: ^10.0.13 => 10.0.13 @types/uuid: ^8.3.4 => 8.3.4 @typescript-eslint/eslint-plugin: ^5.55.0 => 5.55.0 @typescript-eslint/parser: ^5.55.0 => 5.55.0 (5.44.0) @zeplin/cli: ^2.0.1 => 2.0.1 @zeplin/cli-connect-react-plugin: ^1.1.1 => 1.1.1 HelloWorld: 0.0.1 amazon-cognito-identity-js: 6.2.0 => 6.2.0 axios: ^1.3.4 => 1.3.4 (0.26.0, 0.21.4) babel-loader: ^9.1.2 => 9.1.2 babel-preset-expo: ^9.3.0 => 9.3.0 bad-words: ^3.0.4 => 3.0.4 color: ^4.2.3 => 4.2.3 (3.2.1) dayjs: ^1.11.7 => 1.11.7 (1.11.6) deep-equal: ^2.2.0 => 2.2.0 eslint: ^8.36.0 => 8.36.0 (8.28.0) eslint-config-prettier: ^8.7.0 => 8.7.0 eslint-import-resolver-typescript: ^3.5.3 => 3.5.3 eslint-plugin-destructuring: ^2.2.1 => 2.2.1 eslint-plugin-import: ^2.27.5 => 2.27.5 eslint-plugin-jest: ^27.2.1 => 27.2.1 eslint-plugin-jest-formatting: ^3.1.0 => 3.1.0 eslint-plugin-prettier: ^4.2.1 => 4.2.1 eslint-plugin-react: ^7.32.2 => 7.32.2 eslint-plugin-react-hooks: ^4.6.0 => 4.6.0 eslint-plugin-react-native: ^4.0.0 => 4.0.0 eslint-plugin-simple-import-sort: ^10.0.0 => 10.0.0 eslint-plugin-sonarjs: ^0.18.0 => 0.18.0 expo: ^48.0.0 => 48.0.7 expo-app-loading: ~2.1.1 => 2.1.1 expo-application: ~5.1.1 => 5.1.1 expo-background-fetch: ~11.1.1 => 11.1.1 expo-constants: ~14.2.1 => 14.2.1 expo-crypto: ~12.2.1 => 12.2.1 expo-device: ~5.2.1 => 5.2.1 expo-image-manipulator: ~11.1.1 => 11.1.1 expo-image-picker: ~14.1.1 => 14.1.1 expo-linking: ~4.0.1 => 4.0.1 expo-localization: ~14.1.1 => 14.1.1 expo-location: ~15.1.1 => 15.1.1 expo-notifications: ~0.18.1 => 0.18.1 expo-sensors: ~12.1.1 => 12.1.1 expo-splash-screen: ~0.18.1 => 0.18.1 (0.17.5) expo-sqlite: ~11.1.1 => 11.1.1 expo-status-bar: ~1.4.4 => 1.4.4 expo-system-ui: ~2.2.1 => 2.2.1 expo-task-manager: ~11.1.1 => 11.1.1 expo-updates: ~0.16.4 => 0.16.4 expo-web-browser: ~12.1.1 => 12.1.1 geolib: ^3.3.3 => 3.3.3 husky: ^8.0.3 => 8.0.3 i18next: ^22.4.12 => 22.4.12 jest: ^29.2.1 => 29.5.0 jest-expo: ^48.0.2 => 48.0.2 jest-fetch-mock: ^3.0.3 => 3.0.3 json-diff: ^1.0.3 => 1.0.3 libphonenumber-js: ^1.10.24 => 1.10.24 libphonenumber-js/build: undefined () libphonenumber-js/core: undefined () libphonenumber-js/max: undefined () libphonenumber-js/max/metadata: undefined () libphonenumber-js/min: undefined () libphonenumber-js/min/metadata: undefined () libphonenumber-js/mobile: undefined () libphonenumber-js/mobile/examples: undefined () libphonenumber-js/mobile/metadata: undefined () lint-staged: ^13.2.0 => 13.2.0 madge: ^6.0.0 => 6.0.0 patch-package: ^6.5.1 => 6.5.1 prettier: ^2.8.4 => 2.8.5 (2.8.0) prettier-eslint: ^15.0.1 => 15.0.1 prompts: ^2.4.2 => 2.4.2 prop-types: ^15.8.1 => 15.8.1 react: 18.2.0 => 18.2.0 react-hook-form: 7.43.6 => 7.43.6 react-i18next: ^12.2.0 => 12.2.0 react-native: 0.71.6 => 0.71.6 react-native-animatable: ^1.3.3 => 1.3.3 react-native-gesture-handler: ~2.9.0 => 2.9.0 react-native-google-places-autocomplete: ^2.5.1 => 2.5.1 react-native-maps: 1.3.2 => 1.3.2 react-native-modal: 13.0.1 => 13.0.1 react-native-paper: ~5.4.1 => 5.4.1 react-native-reanimated: ~2.14.4 => 2.14.4 react-native-safe-area-context: 4.5.0 => 4.5.0 react-native-screens: ~3.20.0 => 3.20.0 react-redux: ^8.0.5 => 8.0.5 redux: ^4.2.1 => 4.2.1 (4.2.0) redux-persist: ^6.0.0 => 6.0.0 redux-persist/integration/react: undefined () sanitize-filename: ^1.6.3 => 1.6.3 sentry-expo: ~4.2.0 => 4.2.0 snapshot-diff: ^0.10.0 => 0.10.0 sort-json: ^2.0.1 => 2.0.1 ts-node: ^10.9.1 => 10.9.1 typescript: ^4.9.4 => 4.9.5 (4.9.3, 3.9.10) use-debounce: ^9.0.3 => 9.0.3 uuid: ^9.0.0 => 9.0.0 (8.3.2, 3.4.0, 7.0.3) yup: ^1.0.2 => 1.0.2 npmGlobalPackages: @aws-amplify/cli: 11.0.3 corepack: 0.15.1 eas-cli: 3.8.1 expo-cli: 6.3.2 npm: 8.19.3 ```

Describe the bug

Hey team. I recently upgraded all the @aws packages to the latest versions. I didn't have any issues before with these versions:

"@aws-amplify/api": "5.0.11",
"@aws-amplify/auth": "5.1.5",
"@aws-amplify/core": "5.0.11",
"@aws-amplify/datastore": "4.0.11",
"@aws-amplify/datastore-storage-adapter": "2.0.11",
"@aws-amplify/storage": "5.1.1",
"amazon-cognito-identity-js": "6.1.2"

But with the latest versions, as soon as the new Cognito user is created and I'm trying to use it in order to create the other entities, then this warning is being thrown DataStore - conflict trycatch [Error: Field cognitoUserId is required] when syncing all the remote models with DataStore.

Expected behavior

No warnings should be shown.

Reproduction steps

  1. Sign up a new user with the Auth package.
  2. Try to create a new entity with the DataStore package.

Code Snippet

// Put your code below this line.
export const createCompany = async (attributes: Omit<Company, 'id'>): Promise<Company | null> => {
  log(`createCompany(${JSON.stringify(attributes)})`);

  try {
    const companyAttributes = await companiesParsers.parseToRemoteCompany(attributes);

    if (!companyAttributes) return null;

    const newCompany = await DataStore.save(new DataStoreModels.Company(companyAttributes));

    return companiesParsers.parseToLocalCompany(newCompany);
  } catch (error) {
    throw errorsParsers.parseAndLogError(error, logError);
  }
};

Log output

``` // Put your logs below this line FiNC03NWRiLTQyZDMtODdhMi1kMTYyMjI1NzlmZWYiLCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAudXMtd2VzdC0yLmFtYXpvbmF3cy5jb21cL3VzLXdlc3QtMl9JaVFYdGp4NEIiLCJjbGllbnRfaWQiOiIzbmYycms5Zm5vNWN2OHFrcHVodjFnZ3NndiIsIm9yaWdpbl9qdGkiOiJmZmYwMmE1Zi1hMWI5LTRmOTktOGE0YS1mZDRiZDEwZGIxMjgiLCJldmVudF9pZCI6ImI2MjhhNTIzLTUyM2ItNDFjZC05YzY0LTk5MTI0YjI0YzFlMyIsInRva2VuX3VzZSI6ImFjY2VzcyIsInNjb3BlIjoiYXdzLmNvZ25pdG8uc2lnbmluLnVzZXIuYWRtaW4iLCJhdXRoX3RpbWUiOjE2ODIzMjI2NTUsImV4cCI6MTY4MjMyNjI3OSwiaWF0IjoxNjgyMzIyNjc5LCJqdGkiOiJjNzNjNWMzMS0xMTE5LTQxNjYtYmYzMi04MzBhZGQ5NDFmNGEiLCJ1c2VybmFtZSI6ImU2MDIwYWI0LTc1ZGItNDJkMy04N2EyLWQxNjIyMjU3OWZlZiJ9.y_-jDjpq7H1k0vR_5LV3B5PQbYrBUoz9doA4dy1bKljD1EqRKokZ402g7VKX5mQDMtUDv0jioMLZ7WrzV0Maz_flk0mIKdU6IEXDp7UsdfCQh0yNron4yHN9-bSZFiOY5gA8NHeWar6MRIqdxT9hTQHlDAFX_LgWD-59gJ2UgSiN9UvqioO1rQseqNixz-YilzDdu8r-ZTzWFWEF2LZOAxP9tdZ31wG1TChdV7-VPCP4aXEv8wIVoK0c8sTtmLSXKfHHLKzpargjzJtEWbK5NYOPas3zBBrSPGhwYlQgrHUxgDCr3OHJPe_aUA3FE-S75OA7S8DLioQuBTvhK-OQmA", "payload": {"auth_time": 1682322655, "client_id": "3nf2rk9fno5cv8qkpuhv1ggsgv", "event_id": "b628a523-523b-41cd-9c64-99124b24c1e3", "exp": 1682326279, "iat": 1682322679, "iss": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_IiQXtjx4B", "jti": "c73c5c31-1119-4166-bf32-830add941f4a", "origin_jti": "fff02a5f-a1b9-4f99-8a4a-fd4bd10db128", "scope": "aws.cognito.signin.user.admin", "sub": "e6020ab4-75db-42d3-87a2-d16222579fef", "token_use": "access", "username": "e6020ab4-75db-42d3-87a2-d16222579fef"}}, "clockDrift": 0, "idToken": {"jwtToken": "eyJraWQiOiJJMVhLZGF5VU5oQm5pcnhlRmgxTDNuVUxWeVlTZ1VYaCt2dkJxeFkycWRnPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiJlNjAyMGFiNC03NWRiLTQyZDMtODdhMi1kMTYyMjI1NzlmZWYiLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLXdlc3QtMi5hbWF6b25hd3MuY29tXC91cy13ZXN0LTJfSWlRWHRqeDRCIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6ImU2MDIwYWI0LTc1ZGItNDJkMy04N2EyLWQxNjIyMjU3OWZlZiIsImdpdmVuX25hbWUiOiJEbWl0cnkiLCJvcmlnaW5fanRpIjoiZmZmMDJhNWYtYTFiOS00Zjk5LThhNGEtZmQ0YmQxMGRiMTI4IiwiY3VzdG9tOnVzZXJUeXBlIjoiY29udHJhY3RvciIsImF1ZCI6IjNuZjJyazlmbm81Y3Y4cWtwdWh2MWdnc2d2IiwiZXZlbnRfaWQiOiJiNjI4YTUyMy01MjNiLTQxY2QtOWM2NC05OTEyNGIyNGMxZTMiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MjMyMjY1NSwicGhvbmVfbnVtYmVyIjoiKzM4MDk5MDE0NDk0NCIsImV4cCI6MTY4MjMyNjI3OSwiaWF0IjoxNjgyMzIyNjc5LCJmYW1pbHlfbmFtZSI6IkNvbnRyYWN0b3IiLCJqdGkiOiIzMWYzZWMyMS1iMGRlLTRiZTEtODc4Ny05MWFkNzg5MDgzMzUiLCJlbWFpbCI6InVzeWFzaGE2OUBnbWFpbC5jb20ifQ.syeSyikIBk1qCo_G9PZ9pu23I2J54PKxQ41DC-jD30qfBw2nMVh7Cpck1-3x20ubTGtiX4G_7MSElKXIrb2xsUy8CYxhb2C4LhwiDLv0gsz06CKUBLb1wL-VV9AWhRDmdxrzqEm69HSpxHX3ObxCdH0GI9q4RIhSBqMQ5FyhJ959NNApFHRvJKgNbL_anfW2vRTZGlI2R6pk3RtDRuf0jA3A7DCGrmjtRGFjF0usxCQwYZSBteY1psB4QJ3LxqWby3H0B1P42vYqZXiloNh1SZrhnLhQAmBhEz4rKvFExl--psh5Dr1uZxWVXCBm9h9VKlDuijW8YvCWFrOdwMjdQQ", "payload": {"aud": "3nf2rk9fno5cv8qkpuhv1ggsgv", "auth_time": 1682322655, "cognito:username": "e6020ab4-75db-42d3-87a2-d16222579fef", "custom:userType": "contractor", "email": "usyasha69@gmail.com", "email_verified": true, "event_id": "b628a523-523b-41cd-9c64-99124b24c1e3", "exp": 1682326279, "family_name": "Contractor", "given_name": "Dmitry", "iat": 1682322679, "iss": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_IiQXtjx4B", "jti": "31f3ec21-b0de-4be1-8787-91ad78908335", "origin_jti": "fff02a5f-a1b9-4f99-8a4a-fd4bd10db128", "phone_number": "+380990144944", "phone_number_verified": false, "sub": "e6020ab4-75db-42d3-87a2-d16222579fef", "token_use": "id"}}, "refreshToken": {"token": "eyJjdHkiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAifQ.JJrjgtAI8DzF1SZJBuyGnwYIiDAWzpXFzzZ4na18PAtQ_ofbcnlyC2hIQp7EIKGCqOUSE2Dqd9piwgOaDYdF25lhZQJDh1Vjku0-vCuZbtkisMO_zKLSf7RQRiUhXLM9Kfi7ktsPrm0D8TNhnhDFlg3MgCZmwx0yUR4SSNxxuIAAIWSnJ8_-GtfDBwH0TCxeNMhy2qL0vvndm0C7JFWmu1lMRd5nCy63hA3vc3LwGmGJmpVHiumkzBRpXpDpPY1VOO1cwIb5CdvWkQrEp3u2BTgciykfTcz1WqzxhkkS7mpSvLYFXMWgdd0aw4N0FcYbiGJZ-dgbIK0jfqIi3xk2Ew.yPWZJNlwFJoSP7Gj.u8rc9IoNxNrLzrwx5f7AcHeMz7lbdIMyhyEEjeHWE9UVC2QMbsHinWICLxaeR0Ih3mDlttkxRNXNgXrynd5meQKlVW56lnOUhY16V_8KNhqKss8dxkJC2FxqQQXTQxgQe79fNR1DZvaU5tmXs3ouF09iXCpDysrRiMnnexsxxcwbC5BV08-fm7hXamMtdyxoxlfs0oNHVdGVNT770WLsPHnYPewAxjhnSWr61vYavjLSP9N7pqIYJXBuSEwPOo0KheZRS7b38o9KFrLIpvdT1ITWNa3f3ZdM17ylCyeY353ilhxYtiIakE92Yd3M0StwvM7ofNphmDQRP6t76aSIDshlpKCCWEKFDVQJxLUEiZ3m4ecDknOf9VwGTrmL30oV3EjOKY0xy8HvWcUVTaPm8F5308HJaWeb5e8Y-1t1GFE8x-I6l3S35PuO2zxUSX0WyxkDnS27DQ3e1ULDt1hFF4VuRzAtGZPTJr86Ke7I_3vcWs3mSapMPrBFgvaWkH44k3ypcgFs7pJvUW8aDWVCBkdI8o2MJXn3IsB_EWFd_zX4friEViLG97i4Q5-vKI57HfTyAKoSNrcdFbNoui6l3D3QYrDh5_NBftsAaiSQaBCnCZpL04-xZlXzRNN_0g-bc5SxAlH5B8OEmBJRpxuvVWy8K1CdmFPMRv6-UcMgbhi_8-XYM5s7YdsWr8lMopjBG8iSvfElykRXNhp1vrWrtq9JPgoKkP6wNsWDTns87Uu31jR-pL8PSpt3cn09eyRS1KIbrf65uQz-ELH9uO-YZFTXwsY1empvU82QZvC0ZsHwy6t7fUAEneaWWhpzmFJB784zeqBlLYrHI-nvO4effiBAomgUHrl2un-Q6WDc7FCi-HZy4ROkH9BkHJe13_zrkaCxGdb7KCVsNJ4_nV-eehIqYG2E6l1DH9IH4xjeMwAxzKyD3yEdhntlx5qzcFmiHpXDu2Zde3evGuwVQH_Nd037bFgbwjCJB7M39Bc_XURppTTaRv2gVXjcZFL75rDlQUOnW9GOBL21XYB3hJbAh12FQxJzMbGMmHtsB3xuXjA_h3hH49Tk7-UDAOoB7QpaQI7hOa2v0Bh3WPe4UVM1G-gV7XLKQimBQ68f7NP4bmeP0s8AD8yVMQ0yODdWLDVFsNwh1YHz6bC-Dgc6S3QVJxspROkruvO4WQFBDFIwcCQvKQZ5pNK02m7Lo1atIhCURP-2QwVLQ7Rvb42U1xXSohyEKa3Rf5Gmi6ibC2h1Uy4z1y4D-gRbHL0wQ89flledvaWXm1TKc0mhldlMfSK69dpMC_ZMyFK6Jm_LP-mVVE6iOMlZJ4nlm03R_g.zkTFWTr1-4Q3zjcunDHxyg"}} LOG [DEBUG] 52:23.874 AuthClass - Succeed to get the user session {"accessToken": {"jwtToken": "eyJraWQiOiJhK3lKNFBCem1ndTJ3UzQ1eTlxa0s5VGNma3Jub1lMNmhOc3ZzNjFLQm1vPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiJlNjAyMGFiNC03NWRiLTQyZDMtODdhMi1kMTYyMjI1NzlmZWYiLCJpc3MiOiJodHRwczpcL1wvY29nbml0by1pZHAudXMtd2VzdC0yLmFtYXpvbmF3cy5jb21cL3VzLXdlc3QtMl9JaVFYdGp4NEIiLCJjbGllbnRfaWQiOiIzbmYycms5Zm5vNWN2OHFrcHVodjFnZ3NndiIsIm9yaWdpbl9qdGkiOiJmZmYwMmE1Zi1hMWI5LTRmOTktOGE0YS1mZDRiZDEwZGIxMjgiLCJldmVudF9pZCI6ImI2MjhhNTIzLTUyM2ItNDFjZC05YzY0LTk5MTI0YjI0YzFlMyIsInRva2VuX3VzZSI6ImFjY2VzcyIsInNjb3BlIjoiYXdzLmNvZ25pdG8uc2lnbmluLnVzZXIuYWRtaW4iLCJhdXRoX3RpbWUiOjE2ODIzMjI2NTUsImV4cCI6MTY4MjMyNjI3OSwiaWF0IjoxNjgyMzIyNjc5LCJqdGkiOiJjNzNjNWMzMS0xMTE5LTQxNjYtYmYzMi04MzBhZGQ5NDFmNGEiLCJ1c2VybmFtZSI6ImU2MDIwYWI0LTc1ZGItNDJkMy04N2EyLWQxNjIyMjU3OWZlZiJ9.y_-jDjpq7H1k0vR_5LV3B5PQbYrBUoz9doA4dy1bKljD1EqRKokZ402g7VKX5mQDMtUDv0jioMLZ7WrzV0Maz_flk0mIKdU6IEXDp7UsdfCQh0yNron4yHN9-bSZFiOY5gA8NHeWar6MRIqdxT9hTQHlDAFX_LgWD-59gJ2UgSiN9UvqioO1rQseqNixz-YilzDdu8r-ZTzWFWEF2LZOAxP9tdZ31wG1TChdV7-VPCP4aXEv8wIVoK0c8sTtmLSXKfHHLKzpargjzJtEWbK5NYOPas3zBBrSPGhwYlQgrHUxgDCr3OHJPe_aUA3FE-S75OA7S8DLioQuBTvhK-OQmA", "payload": {"auth_time": 1682322655, "client_id": "3nf2rk9fno5cv8qkpuhv1ggsgv", "event_id": "b628a523-523b-41cd-9c64-99124b24c1e3", "exp": 1682326279, "iat": 1682322679, "iss": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_IiQXtjx4B", "jti": "c73c5c31-1119-4166-bf32-830add941f4a", "origin_jti": "fff02a5f-a1b9-4f99-8a4a-fd4bd10db128", "scope": "aws.cognito.signin.user.admin", "sub": "e6020ab4-75db-42d3-87a2-d16222579fef", "token_use": "access", "username": "e6020ab4-75db-42d3-87a2-d16222579fef"}}, "clockDrift": 0, "idToken": {"jwtToken": "eyJraWQiOiJJMVhLZGF5VU5oQm5pcnhlRmgxTDNuVUxWeVlTZ1VYaCt2dkJxeFkycWRnPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiJlNjAyMGFiNC03NWRiLTQyZDMtODdhMi1kMTYyMjI1NzlmZWYiLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaXNzIjoiaHR0cHM6XC9cL2NvZ25pdG8taWRwLnVzLXdlc3QtMi5hbWF6b25hd3MuY29tXC91cy13ZXN0LTJfSWlRWHRqeDRCIiwicGhvbmVfbnVtYmVyX3ZlcmlmaWVkIjpmYWxzZSwiY29nbml0bzp1c2VybmFtZSI6ImU2MDIwYWI0LTc1ZGItNDJkMy04N2EyLWQxNjIyMjU3OWZlZiIsImdpdmVuX25hbWUiOiJEbWl0cnkiLCJvcmlnaW5fanRpIjoiZmZmMDJhNWYtYTFiOS00Zjk5LThhNGEtZmQ0YmQxMGRiMTI4IiwiY3VzdG9tOnVzZXJUeXBlIjoiY29udHJhY3RvciIsImF1ZCI6IjNuZjJyazlmbm81Y3Y4cWtwdWh2MWdnc2d2IiwiZXZlbnRfaWQiOiJiNjI4YTUyMy01MjNiLTQxY2QtOWM2NC05OTEyNGIyNGMxZTMiLCJ0b2tlbl91c2UiOiJpZCIsImF1dGhfdGltZSI6MTY4MjMyMjY1NSwicGhvbmVfbnVtYmVyIjoiKzM4MDk5MDE0NDk0NCIsImV4cCI6MTY4MjMyNjI3OSwiaWF0IjoxNjgyMzIyNjc5LCJmYW1pbHlfbmFtZSI6IkNvbnRyYWN0b3IiLCJqdGkiOiIzMWYzZWMyMS1iMGRlLTRiZTEtODc4Ny05MWFkNzg5MDgzMzUiLCJlbWFpbCI6InVzeWFzaGE2OUBnbWFpbC5jb20ifQ.syeSyikIBk1qCo_G9PZ9pu23I2J54PKxQ41DC-jD30qfBw2nMVh7Cpck1-3x20ubTGtiX4G_7MSElKXIrb2xsUy8CYxhb2C4LhwiDLv0gsz06CKUBLb1wL-VV9AWhRDmdxrzqEm69HSpxHX3ObxCdH0GI9q4RIhSBqMQ5FyhJ959NNApFHRvJKgNbL_anfW2vRTZGlI2R6pk3RtDRuf0jA3A7DCGrmjtRGFjF0usxCQwYZSBteY1psB4QJ3LxqWby3H0B1P42vYqZXiloNh1SZrhnLhQAmBhEz4rKvFExl--psh5Dr1uZxWVXCBm9h9VKlDuijW8YvCWFrOdwMjdQQ", "payload": {"aud": "3nf2rk9fno5cv8qkpuhv1ggsgv", "auth_time": 1682322655, "cognito:username": "e6020ab4-75db-42d3-87a2-d16222579fef", "custom:userType": "contractor", "email": "usyasha69@gmail.com", "email_verified": true, "event_id": "b628a523-523b-41cd-9c64-99124b24c1e3", "exp": 1682326279, "family_name": "Contractor", "given_name": "Dmitry", "iat": 1682322679, "iss": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_IiQXtjx4B", "jti": "31f3ec21-b0de-4be1-8787-91ad78908335", "origin_jti": "fff02a5f-a1b9-4f99-8a4a-fd4bd10db128", "phone_number": "+380990144944", "phone_number_verified": false, "sub": "e6020ab4-75db-42d3-87a2-d16222579fef", "token_use": "id"}}, "refreshToken": {"token": "eyJjdHkiOiJKV1QiLCJlbmMiOiJBMjU2R0NNIiwiYWxnIjoiUlNBLU9BRVAifQ.JJrjgtAI8DzF1SZJBuyGnwYIiDAWzpXFzzZ4na18PAtQ_ofbcnlyC2hIQp7EIKGCqOUSE2Dqd9piwgOaDYdF25lhZQJDh1Vjku0-vCuZbtkisMO_zKLSf7RQRiUhXLM9Kfi7ktsPrm0D8TNhnhDFlg3MgCZmwx0yUR4SSNxxuIAAIWSnJ8_-GtfDBwH0TCxeNMhy2qL0vvndm0C7JFWmu1lMRd5nCy63hA3vc3LwGmGJmpVHiumkzBRpXpDpPY1VOO1cwIb5CdvWkQrEp3u2BTgciykfTcz1WqzxhkkS7mpSvLYFXMWgdd0aw4N0FcYbiGJZ-dgbIK0jfqIi3xk2Ew.yPWZJNlwFJoSP7Gj.u8rc9IoNxNrLzrwx5f7AcHeMz7lbdIMyhyEEjeHWE9UVC2QMbsHinWICLxaeR0Ih3mDlttkxRNXNgXrynd5meQKlVW56lnOUhY16V_8KNhqKss8dxkJC2FxqQQXTQxgQe79fNR1DZvaU5tmXs3ouF09iXCpDysrRiMnnexsxxcwbC5BV08-fm7hXamMtdyxoxlfs0oNHVdGVNT770WLsPHnYPewAxjhnSWr61vYavjLSP9N7pqIYJXBuSEwPOo0KheZRS7b38o9KFrLIpvdT1ITWNa3f3ZdM17ylCyeY353ilhxYtiIakE92Yd3M0StwvM7ofNphmDQRP6t76aSIDshlpKCCWEKFDVQJxLUEiZ3m4ecDknOf9VwGTrmL30oV3EjOKY0xy8HvWcUVTaPm8F5308HJaWeb5e8Y-1t1GFE8x-I6l3S35PuO2zxUSX0WyxkDnS27DQ3e1ULDt1hFF4VuRzAtGZPTJr86Ke7I_3vcWs3mSapMPrBFgvaWkH44k3ypcgFs7pJvUW8aDWVCBkdI8o2MJXn3IsB_EWFd_zX4friEViLG97i4Q5-vKI57HfTyAKoSNrcdFbNoui6l3D3QYrDh5_NBftsAaiSQaBCnCZpL04-xZlXzRNN_0g-bc5SxAlH5B8OEmBJRpxuvVWy8K1CdmFPMRv6-UcMgbhi_8-XYM5s7YdsWr8lMopjBG8iSvfElykRXNhp1vrWrtq9JPgoKkP6wNsWDTns87Uu31jR-pL8PSpt3cn09eyRS1KIbrf65uQz-ELH9uO-YZFTXwsY1empvU82QZvC0ZsHwy6t7fUAEneaWWhpzmFJB784zeqBlLYrHI-nvO4effiBAomgUHrl2un-Q6WDc7FCi-HZy4ROkH9BkHJe13_zrkaCxGdb7KCVsNJ4_nV-eehIqYG2E6l1DH9IH4xjeMwAxzKyD3yEdhntlx5qzcFmiHpXDu2Zde3evGuwVQH_Nd037bFgbwjCJB7M39Bc_XURppTTaRv2gVXjcZFL75rDlQUOnW9GOBL21XYB3hJbAh12FQxJzMbGMmHtsB3xuXjA_h3hH49Tk7-UDAOoB7QpaQI7hOa2v0Bh3WPe4UVM1G-gV7XLKQimBQ68f7NP4bmeP0s8AD8yVMQ0yODdWLDVFsNwh1YHz6bC-Dgc6S3QVJxspROkruvO4WQFBDFIwcCQvKQZ5pNK02m7Lo1atIhCURP-2QwVLQ7Rvb42U1xXSohyEKa3Rf5Gmi6ibC2h1Uy4z1y4D-gRbHL0wQ89flledvaWXm1TKc0mhldlMfSK69dpMC_ZMyFK6Jm_LP-mVVE6iOMlZJ4nlm03R_g.zkTFWTr1-4Q3zjcunDHxyg"}} LOG [DEBUG] 52:23.879 RestClient - POST https://24x32odegvedbf2oocchkvjavq.appsync-api.us-west-2.amazonaws.com/graphql WARN [WARN] 52:24.442 DataStore - conflict trycatch [Error: Field cognitoUserId is required] LOG 2023-04-24 10:52:24.443+03:00 [DATASTORE] DataStore error (type: UNKNOWN) detected in console.warn logs LOG { "Amplify DataStore": { "message": "[WARN] 52:24.442 DataStore - conflict trycatch", "params": {} } } ```

aws-exports.js

const awsmobile = {
    "aws_project_region": "us-west-2",
    "aws_cloud_logic_custom": [
        {
            "name": "AdminQueries",
            "endpoint": "https://ei9kpvl4o2.execute-api.us-west-2.amazonaws.com/dusik",
            "region": "us-west-2"
        }
    ],
    "aws_appsync_graphqlEndpoint": "https://24x32odegvedbf2oocchkvjavq.appsync-api.us-west-2.amazonaws.com/graphql",
    "aws_appsync_region": "us-west-2",
    "aws_appsync_authenticationType": "AMAZON_COGNITO_USER_POOLS",
    "aws_cognito_identity_pool_id": "us-west-2:68d9bf6c-8335-4b0f-a053-c5ef81af70fa",
    "aws_cognito_region": "us-west-2",
    "aws_user_pools_id": "us-west-2_IiQXtjx4B",
    "aws_user_pools_web_client_id": "3nf2rk9fno5cv8qkpuhv1ggsgv",
    "oauth": {},
    "aws_cognito_username_attributes": [
        "EMAIL"
    ],
    "aws_cognito_social_providers": [],
    "aws_cognito_signup_attributes": [
        "EMAIL"
    ],
    "aws_cognito_mfa_configuration": "OPTIONAL",
    "aws_cognito_mfa_types": [
        "SMS",
        "TOTP"
    ],
    "aws_cognito_password_protection_settings": {
        "passwordPolicyMinLength": "10",
        "passwordPolicyCharacters": [
            "REQUIRES_LOWERCASE",
            "REQUIRES_UPPERCASE",
            "REQUIRES_NUMBERS",
            "REQUIRES_SYMBOLS"
        ]
    },
    "aws_cognito_verification_mechanisms": [
        "EMAIL"
    ],
    "aws_user_files_s3_bucket": "abelmkr173257-dusik",
    "aws_user_files_s3_bucket_region": "us-west-2"
};

Manual configuration

No response

Additional configuration

No response

Mobile Device

iPhone 14 Simulator

Mobile Operating System

iOS 16.3

Mobile Browser

No response

Mobile Browser Version

No response

Additional information and screenshots

Simulator Screenshot - iPhone 14 - 2023-04-24 at 10 56 03

chrisbonifacio commented 1 year ago

Hi @dmitryusikriseapps 👋 thank you for raising this issue.

Can you confirm wether you are using the Optimistic Concurrency conflict resolution strategy?

If so, this issue may be a duplicate of another recently opened: #11271

If not, can you share the network activity of the requests? Lastly, please confirm that cogntiUserId is not undefined when the error occurs and whether a record was created or not in DynamoDB.

dmitryusikriseapps commented 1 year ago

Hey @chrisbonifacio, thanks for the quick answer. Regarding your question: 1) We do use Optimistic Concurrency conflict resolution strategy. 2) What do you mean by the network activity? Would you like me to use some additional software to track it? Or it's possible with the amplify libraries? 3) Let me also check if cognitoUserId exists.

chrisbonifacio commented 1 year ago

@dmitryusikriseapps Thank you for confirming! Because you are also using Optimistic Concurrency, this seems to be a duplicate of #11271 so I will close this issue and ask that you can track that issue for updates.

I don't think I need the network activity anymore, but if you would still like to check it to confirm the behavior I mentioned in my comment on the other issue, you can add this line to your app:

Amplify.Logger.LOG_LEVEL = "DEBUG";

Amplify will print all internal events to the console.