Prisma-client-js: Nested create broken in latest alpha

Created on 11 Feb 2020  路  4Comments  路  Source: prisma/prisma-client-js

SQLite database: db.zip

Schema

datasource db {
  provider = "sqlite"
  url      = "file:dev.db"
}

generator client {
  provider = "prisma-client-js"
}

model User {
  id    Int    @id @default(autoincrement())
  name  String
  email String @unique
  posts Post[]
}

model Post {
  id       Int       @id @default(autoincrement())
  title    String
  text     String
  comments Comment[]
}

model Comment {
  id    Int    @id @default(autoincrement())
  title String
}

Prisma Client Code


await prisma.user.create({
  data: {
    email: '[email protected]',
    name: 'Leora Block',
    posts: {
      create: [
        {
          title: 'The ADP capacitor is down, compress the haptic pixel so we can compress the HTTP application!',
          text: 'Temporibus eum numquam quis ut similique illum. Odio quidem qui veniam aperiam nihil quia soluta. Similique ipsum unde distinctio nobis libero ratione accusantium architecto. Soluta aut fuga ut et. Cupiditate consequatur quia voluptates quod architecto. Quas quaerat placeat est illum.\n' +
            ' \rAspernatur officia animi velit ex. Ipsam autem consequatur eum. Dolorem veniam minus qui quia pariatur ipsum. Illum dolor nam iusto magni perferendis. Et voluptatem commodi nobis sit quis consequatur illo nam eligendi. Et enim beatae qui pariatur cum.\n' +
            ' \rVelit optio nobis blanditiis voluptatum ut et recusandae in. Architecto sapiente incidunt aspernatur laborum sint voluptas ratione sed. Commodi sit rerum odio ipsam assumenda dicta dolorum.\n' +
            ' \rVel tempore sapiente officia quis. Reiciendis earum eaque sed facere illo quidem consequuntur. Soluta nobis ut maxime autem delectus sit voluptas saepe.\n' +
            ' \rAspernatur sunt culpa dicta. Occaecati aut iusto voluptatem vel dolores veritatis natus ab dolores. Doloribus sed eius in debitis sit. Optio autem aliquam qui repudiandae sint libero odit.\n' +
            ' \rUt aut quasi veniam aut et voluptate omnis. Recusandae sit beatae aspernatur rem architecto cupiditate blanditiis et. Voluptas libero natus. Nulla voluptas officiis reiciendis ut voluptas.\n' +
            ' \rSaepe quia nihil beatae voluptate nam. Eveniet nulla corporis fugiat consequatur quis quam. Perferendis est neque nostrum magnam quod rerum. Quos consequuntur id debitis voluptate culpa.\n' +
            ' \rAut cum qui sit non in. Dicta cumque vel voluptas ea accusantium ut nihil est. Architecto iste deleniti voluptatum id molestias reiciendis asperiores. Tempora ut ut. Omnis iste aut.\n' +
            ' \rAdipisci nisi in id dolor amet voluptatem omnis. Aut dolorem aspernatur ipsum et nemo id. Sunt reprehenderit corrupti.\n' +
            ' \rQuisquam ad tenetur praesentium omnis ut. Blanditiis ipsum qui ea. Sapiente ipsam nam ullam sapiente cum. Ullam qui accusantium sunt aspernatur est fugit suscipit.'
        }
      ]
    }
  }
})

Underlying Query

mutation {
  createOneUser(data: {
    email: "[email protected]"
    name: "Leora Block"
    posts: {
      create: [
        {
          title: "The ADP capacitor is down, compress the haptic pixel so we can compress the HTTP application!"
          text: "Temporibus eum numquam quis ut similique illum. Odio quidem qui veniam aperiam nihil quia soluta. Similique ipsum unde distinctio nobis libero ratione accusantium architecto. Soluta aut fuga ut et. Cupiditate consequatur quia voluptates quod architecto. Quas quaerat placeat est illum.\n \rAspernatur officia animi velit ex. Ipsam autem consequatur eum. Dolorem veniam minus qui quia pariatur ipsum. Illum dolor nam iusto magni perferendis. Et voluptatem commodi nobis sit quis consequatur illo nam eligendi. Et enim beatae qui pariatur cum.\n \rVelit optio nobis blanditiis voluptatum ut et recusandae in. Architecto sapiente incidunt aspernatur laborum sint voluptas ratione sed. Commodi sit rerum odio ipsam assumenda dicta dolorum.\n \rVel tempore sapiente officia quis. Reiciendis earum eaque sed facere illo quidem consequuntur. Soluta nobis ut maxime autem delectus sit voluptas saepe.\n \rAspernatur sunt culpa dicta. Occaecati aut iusto voluptatem vel dolores veritatis natus ab dolores. Doloribus sed eius in debitis sit. Optio autem aliquam qui repudiandae sint libero odit.\n \rUt aut quasi veniam aut et voluptate omnis. Recusandae sit beatae aspernatur rem architecto cupiditate blanditiis et. Voluptas libero natus. Nulla voluptas officiis reiciendis ut voluptas.\n \rSaepe quia nihil beatae voluptate nam. Eveniet nulla corporis fugiat consequatur quis quam. Perferendis est neque nostrum magnam quod rerum. Quos consequuntur id debitis voluptate culpa.\n \rAut cum qui sit non in. Dicta cumque vel voluptas ea accusantium ut nihil est. Architecto iste deleniti voluptatum id molestias reiciendis asperiores. Tempora ut ut. Omnis iste aut.\n \rAdipisci nisi in id dolor amet voluptatem omnis. Aut dolorem aspernatur ipsum et nemo id. Sunt reprehenderit corrupti.\n \rQuisquam ad tenetur praesentium omnis ut. Blanditiis ipsum qui ea. Sapiente ipsam nam ullam sapiente cum. Ullam qui accusantium sunt aspernatur est fugit suscipit."
        }
      ]
    }
  }) {
    id
    name
    email
  }
} 

First logged query

BEGIN
INSERT INTO `dev`.`User` (`name`, `email`) VALUES (?,?)
ROLLBACK

Error

InterpretationError("Error for binding \'0\': DomainError(ConversionFailure(\"record identifier\", \"assimilated record identifier\"))")

bu2-confirmed kinbug

Most helpful comment

I just got this error with 2.0.0-beta.1. My Mutation had a simple one-level nested create.

Response: {"data":null,"errors":[{"message":"\nInvalid prisma.user.create() invocation in\n/Users/sri.subramaniam/Personal/eventco/eventco-server/User/src/types/User.ts:143:66\n\nError occurred during query execution:\nInterpretationError(\"Error for binding \'1\': DomainError(ConversionFailure(\\"record identifier\\", \\"assimilated record identifier\\"))\")","locations":[{"line":66,"column":3}],"path":["login"]}]}

All 4 comments

Thanks a lot for reporting 馃檹
This issue is fixed in the latest alpha version of prisma2.
You can try it out with npm i -g prisma2@alpha.

In case it鈥檚 not fixed for you - please let us know and we鈥檒l reopen this issue!

I just got this error with 2.0.0-beta.1. My Mutation had a simple one-level nested create.

Response: {"data":null,"errors":[{"message":"\nInvalid prisma.user.create() invocation in\n/Users/sri.subramaniam/Personal/eventco/eventco-server/User/src/types/User.ts:143:66\n\nError occurred during query execution:\nInterpretationError(\"Error for binding \'1\': DomainError(ConversionFailure(\\"record identifier\\", \\"assimilated record identifier\\"))\")","locations":[{"line":66,"column":3}],"path":["login"]}]}

Can you please create a new issue @srisub1? This is very different now. (Hint: Did you see the relation changes in the last release notes? These are often the cause for this right now)

@srisub1 I had the same error. Updating prisma client and cli to the latest version and running database introspect again solved the problem for me.

The core of the problem was a missing relation in my schema.prisma file as @janpio mentioned.

Was this page helpful?
0 / 5 - 0 ratings