Bug description
Write operations consistently fail with a weird error.
Full debug output
prisma-client {
prisma-client engineConfig: {
prisma-client cwd: '/dir/project',
prisma-client debug: false,
prisma-client datamodelPath: '/dir/project/node_modules/@prisma/client/schema.prisma',
prisma-client prismaPath: undefined,
prisma-client datasources: [],
prisma-client generator: {
prisma-client name: 'client',
prisma-client provider: 'prisma-client-js',
prisma-client output: '/dir/project/node_modules/@prisma/client',
prisma-client binaryTargets: [Array],
prisma-client config: {}
prisma-client },
prisma-client showColors: false,
prisma-client logLevel: 'info',
prisma-client logQueries: true,
prisma-client env: {
prisma-client POSTGRES_URI: 'postgres://username:password@hostname:port/db'
prisma-client },
prisma-client flags: []
prisma-client }
prisma-client } +0ms
getos { version: 'OpenSSL 1.1.1 11 Sep 2018\n' } +0ms
getos { ls: '' } +1ms
getos { platform: 'linux', libssl: '1.1.x' } +3ms
engine {
engine PRISMA_DML_PATH: '/dir/project/node_modules/@prisma/client/schema.prisma',
engine PORT: '51724',
engine RUST_BACKTRACE: '1',
engine RUST_LOG: 'info',
engine LOG_QUERIES: 'true',
engine OVERWRITE_DATASOURCES: '[]'
engine } +0ms
engine { cwd: '/dir/project' } +3ms
plusX Execution permissions of /dir/project/node_modules/@prisma/client/runtime/query-engine-debian-openssl-1.1.x are fine +0ms
engine { flags: [ '--enable-raw-queries' ] } +1ms
engine stderr Printing to stderr for debugging +48ms
engine stderr Listening on 127.0.0.1:51724 +1ms
engine stdout {
timestamp: 'Apr 08 02:57:54.453',
level: 'INFO',
target: 'quaint::pooled',
fields: { message: 'Starting a postgresql pool with 5 connections.' }
} +1ms
prisma:info Starting a postgresql pool with 5 connections.
engine stdout {
timestamp: 'Apr 08 02:57:54.460',
level: 'INFO',
target: 'prisma::server',
fields: {
message: 'Started http server on 127.0.0.1:51724',
'log.target': 'prisma::server',
'log.module_path': 'prisma::server',
'log.file': 'query-engine/prisma/src/server.rs',
'log.line': 109
}
} +6ms
prisma:info Started http server on 127.0.0.1:51724
prisma-client Prisma Client call: +973ms
prisma-client prisma.guild.create({
prisma-client data: {
prisma-client id: 'id',
prisma-client notifications: {
prisma-client create: {
prisma-client id: 'banUnban',
prisma-client channels: {
prisma-client set: [
prisma-client 'channel id'
prisma-client ]
prisma-client }
prisma-client }
prisma-client },
prisma-client prefix: 'prefix',
prisma-client selfRoles: {
prisma-client set: [
prisma-client 'role id'
prisma-client ]
prisma-client },
prisma-client tags: {
prisma-client create: [
prisma-client {
prisma-client author: 'author',
prisma-client content: 'content',
prisma-client id: 'id'
prisma-client }
prisma-client ]
prisma-client }
prisma-client }
prisma-client }) +2ms
prisma-client Generated request: +5ms
prisma-client mutation {
prisma-client createOneGuild(data: {
prisma-client id: "id"
prisma-client notifications: {
prisma-client create: [
prisma-client {
prisma-client id: "banUnban"
prisma-client channels: {
prisma-client set: ["channel id"]
prisma-client }
prisma-client }
prisma-client ]
prisma-client }
prisma-client prefix: "prefix"
prisma-client selfRoles: {
prisma-client set: ["role id"]
prisma-client }
prisma-client tags: {
prisma-client create: [
prisma-client {
prisma-client author: "author"
prisma-client content: "content"
prisma-client id: "id"
prisma-client }
prisma-client ]
prisma-client }
prisma-client }) {
prisma-client id
prisma-client prefix
prisma-client selfRoles
prisma-client }
prisma-client }
prisma-client +0ms
engine stdout {
timestamp: 'Apr 08 02:57:55.002',
level: 'INFO',
target: 'quaint::connector::metrics',
fields: { query: 'BEGIN', item_type: 'query', params: '[]', duration_ms: 76 }
} +542ms
prisma:query BEGIN
engine stdout {
timestamp: 'Apr 08 02:57:55.153',
level: 'INFO',
target: 'quaint::connector::metrics',
fields: {
query: 'INSERT INTO "public"."Guild" ("id","prefix","selfRoles") VALUES ($1,$2,$3) RETURNING "public"."Guild"."id"',
item_type: 'query',
params: '["id","prefix",["role id"]]',
duration_ms: 150
}
} +151ms
prisma:query INSERT INTO "public"."Guild" ("id","prefix","selfRoles") VALUES ($1,$2,$3) RETURNING "public"."Guild"."id"
engine stdout {
timestamp: 'Apr 08 02:57:55.229',
level: 'INFO',
target: 'quaint::connector::metrics',
fields: {
query: 'ROLLBACK',
item_type: 'query',
params: '[]',
duration_ms: 74
}
} +76ms
prisma:query ROLLBACK
engine {
engine error: PrismaClientUnknownRequestError: Error occurred during query execution:
engine InterpretationError("Error for binding \'0\': DomainError(ConversionFailure(\"record identifier\", \"assimilated record identifier\"))")
engine at NodeEngine.graphQLToJSError (/dir/project/node_modules/@prisma/client/runtime/index.js:1:18851)
engine at /dir/project/node_modules/@prisma/client/runtime/index.js:1:16338
engine at processTicksAndRejections (internal/process/task_queues.js:97:5)
engine at Dataloader.loader (/dir/project/node_modules/@prisma/client/runtime/index.js:1:50647)
engine } +9ms
printStack callsite Error
at Object.s [as Guild] (/dir/project/node_modules/@prisma/client/runtime/index.js:1:48551)
at Object.n. [as create] (/dir/project/node_modules/@prisma/client/runtime/index.js:1:50177)
at migrate (/dir/project/src/the_big_migration.ts:74:21)
at processTicksAndRejections (internal/process/task_queues.js:97:5) +0ms
PrismaClientUnknownRequestError:
Invalid `prisma.guild.create()` invocation in
/dir/project/src/the_big_migration.ts:74:21
70
71 export async function migrate(): Promise {
72 await mongo.connect();
73 await prisma.connect();
→ 74 await prisma.guild.create(
Error occurred during query execution:
InterpretationError("Error for binding \'0\': DomainError(ConversionFailure(\"record identifier\", \"assimilated record identifier\"))")
at PrismaClientFetcher.request (/dir/project/node_modules/@prisma/client/runtime/index.js:1:51485)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
How to reproduce
Not entirely sure, but it happens every time I attempt a create operation.
Expected behavior
The write operation succeeds and my app becomes world famous.
Prisma information
datasource sqlite {
url = env("POSTGRES_URI")
provider = "postgresql"
}
generator client {
provider = "prisma-client-js"
binaryTargets = ["native"]
}
model User {
id String @id
balance Float @default(1000)
dailyUsed DateTime?
blacklistReason String?
}
model Guild {
id String @id
prefix String?
selfRoles String[]
tags Tag[]
notifications NotificationSettings[]
}
model Tag {
id String @id
content String
author String
}
model NotificationSettings {
id String @id
channels String[]
}
await prisma.guild.create({
data: {
id: 'id',
notifications: {create: {id: 'banUnban' as Notification, channels: {set: ['channel id']}}},
prefix: 'prefix',
selfRoles: {set: ['role id']},
tags: {create: [{author: 'author', content: 'content', id: 'id'}]}
}
});
Environment & setup
- OS: Windows and WSL (reproduced on both)
- Database: PostgreSQL 12.1
- Prisma version:
@prisma/cli : 2.0.0-beta.1
Current platform : debian-openssl-1.1.x
Query Engine : prisma 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /dir/project/node_modules/@prisma/cli/query-engine-debian-openssl-1.1.x)
Migration Engine : migration-engine-cli 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /dir/project/node_modules/@prisma/cli/migration-engine-debian
-openssl-1.1.x)
Introspection Engine : introspection-core 2accb9c7eacdc984874eaeb63377fe705dfd3203 (at /dir/project/node_modules/@prisma/cli/introspection-engine-debian-openssl-1.1.x)
- Node.js version:
v12.16.1
Bug description
Write operations consistently fail with a weird error.
Full debug output
prisma-client { prisma-client engineConfig: { prisma-client cwd: '/dir/project', prisma-client debug: false, prisma-client datamodelPath: '/dir/project/node_modules/@prisma/client/schema.prisma', prisma-client prismaPath: undefined, prisma-client datasources: [], prisma-client generator: { prisma-client name: 'client', prisma-client provider: 'prisma-client-js', prisma-client output: '/dir/project/node_modules/@prisma/client', prisma-client binaryTargets: [Array], prisma-client config: {} prisma-client }, prisma-client showColors: false, prisma-client logLevel: 'info', prisma-client logQueries: true, prisma-client env: { prisma-client POSTGRES_URI: 'postgres://username:password@hostname:port/db' prisma-client }, prisma-client flags: [] prisma-client } prisma-client } +0ms getos { version: 'OpenSSL 1.1.1 11 Sep 2018\n' } +0ms getos { ls: '' } +1ms getos { platform: 'linux', libssl: '1.1.x' } +3ms engine { engine PRISMA_DML_PATH: '/dir/project/node_modules/@prisma/client/schema.prisma', engine PORT: '51724', engine RUST_BACKTRACE: '1', engine RUST_LOG: 'info', engine LOG_QUERIES: 'true', engine OVERWRITE_DATASOURCES: '[]' engine } +0ms engine { cwd: '/dir/project' } +3ms plusX Execution permissions of /dir/project/node_modules/@prisma/client/runtime/query-engine-debian-openssl-1.1.x are fine +0ms engine { flags: [ '--enable-raw-queries' ] } +1ms engine stderr Printing to stderr for debugging +48ms engine stderr Listening on 127.0.0.1:51724 +1ms engine stdout { timestamp: 'Apr 08 02:57:54.453', level: 'INFO', target: 'quaint::pooled', fields: { message: 'Starting a postgresql pool with 5 connections.' } } +1ms prisma:info Starting a postgresql pool with 5 connections. engine stdout { timestamp: 'Apr 08 02:57:54.460', level: 'INFO', target: 'prisma::server', fields: { message: 'Started http server on 127.0.0.1:51724', 'log.target': 'prisma::server', 'log.module_path': 'prisma::server', 'log.file': 'query-engine/prisma/src/server.rs', 'log.line': 109 } } +6ms prisma:info Started http server on 127.0.0.1:51724 prisma-client Prisma Client call: +973ms prisma-client prisma.guild.create({ prisma-client data: { prisma-client id: 'id', prisma-client notifications: { prisma-client create: { prisma-client id: 'banUnban', prisma-client channels: { prisma-client set: [ prisma-client 'channel id' prisma-client ] prisma-client } prisma-client } prisma-client }, prisma-client prefix: 'prefix', prisma-client selfRoles: { prisma-client set: [ prisma-client 'role id' prisma-client ] prisma-client }, prisma-client tags: { prisma-client create: [ prisma-client { prisma-client author: 'author', prisma-client content: 'content', prisma-client id: 'id' prisma-client } prisma-client ] prisma-client } prisma-client } prisma-client }) +2ms prisma-client Generated request: +5ms prisma-client mutation { prisma-client createOneGuild(data: { prisma-client id: "id" prisma-client notifications: { prisma-client create: [ prisma-client { prisma-client id: "banUnban" prisma-client channels: { prisma-client set: ["channel id"] prisma-client } prisma-client } prisma-client ] prisma-client } prisma-client prefix: "prefix" prisma-client selfRoles: { prisma-client set: ["role id"] prisma-client } prisma-client tags: { prisma-client create: [ prisma-client { prisma-client author: "author" prisma-client content: "content" prisma-client id: "id" prisma-client } prisma-client ] prisma-client } prisma-client }) { prisma-client id prisma-client prefix prisma-client selfRoles prisma-client } prisma-client } prisma-client +0ms engine stdout { timestamp: 'Apr 08 02:57:55.002', level: 'INFO', target: 'quaint::connector::metrics', fields: { query: 'BEGIN', item_type: 'query', params: '[]', duration_ms: 76 } } +542ms prisma:query BEGIN engine stdout { timestamp: 'Apr 08 02:57:55.153', level: 'INFO', target: 'quaint::connector::metrics', fields: { query: 'INSERT INTO "public"."Guild" ("id","prefix","selfRoles") VALUES ($1,$2,$3) RETURNING "public"."Guild"."id"', item_type: 'query', params: '["id","prefix",["role id"]]', duration_ms: 150 } } +151ms prisma:query INSERT INTO "public"."Guild" ("id","prefix","selfRoles") VALUES ($1,$2,$3) RETURNING "public"."Guild"."id" engine stdout { timestamp: 'Apr 08 02:57:55.229', level: 'INFO', target: 'quaint::connector::metrics', fields: { query: 'ROLLBACK', item_type: 'query', params: '[]', duration_ms: 74 } } +76ms prisma:query ROLLBACK engine { engine error: PrismaClientUnknownRequestError: Error occurred during query execution: engine InterpretationError("Error for binding \'0\': DomainError(ConversionFailure(\"record identifier\", \"assimilated record identifier\"))") engine at NodeEngine.graphQLToJSError (/dir/project/node_modules/@prisma/client/runtime/index.js:1:18851) engine at /dir/project/node_modules/@prisma/client/runtime/index.js:1:16338 engine at processTicksAndRejections (internal/process/task_queues.js:97:5) engine at Dataloader.loader (/dir/project/node_modules/@prisma/client/runtime/index.js:1:50647) engine } +9ms printStack callsite Error at Object.s [as Guild] (/dir/project/node_modules/@prisma/client/runtime/index.js:1:48551) at Object.n. [as create] (/dir/project/node_modules/@prisma/client/runtime/index.js:1:50177) at migrate (/dir/project/src/the_big_migration.ts:74:21) at processTicksAndRejections (internal/process/task_queues.js:97:5) +0ms PrismaClientUnknownRequestError: Invalid `prisma.guild.create()` invocation in /dir/project/src/the_big_migration.ts:74:21 70 71 export async function migrate(): Promise { 72 await mongo.connect(); 73 await prisma.connect(); → 74 await prisma.guild.create( Error occurred during query execution: InterpretationError("Error for binding \'0\': DomainError(ConversionFailure(\"record identifier\", \"assimilated record identifier\"))") at PrismaClientFetcher.request (/dir/project/node_modules/@prisma/client/runtime/index.js:1:51485) at processTicksAndRejections (internal/process/task_queues.js:97:5)How to reproduce
Not entirely sure, but it happens every time I attempt a create operation.
Expected behavior
The write operation succeeds and my app becomes world famous.
Prisma information
Environment & setup
v12.16.1