From c851dff395c515462f0ecf096c462a152dfd029f Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Mills Date: Mon, 14 Jun 2021 18:14:55 -0500 Subject: [PATCH 1/6] fix(client, mw, tx): delete transactionId field in mw --- .../happy/middlewares-transaction/.gitignore | 1 + .../happy/middlewares-transaction/dev.db | Bin 0 -> 53248 bytes .../middlewares-transaction/package.json | 12 +++ .../middlewares-transaction/schema.prisma | 28 +++++++ .../happy/middlewares-transaction/test.ts | 30 ++++++++ .../client/src/runtime/getPrismaClient.ts | 69 +++++++++--------- 6 files changed, 104 insertions(+), 36 deletions(-) create mode 100644 src/packages/client/src/__tests__/integration/happy/middlewares-transaction/.gitignore create mode 100644 src/packages/client/src/__tests__/integration/happy/middlewares-transaction/dev.db create mode 100644 src/packages/client/src/__tests__/integration/happy/middlewares-transaction/package.json create mode 100644 src/packages/client/src/__tests__/integration/happy/middlewares-transaction/schema.prisma create mode 100644 src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/.gitignore b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/.gitignore new file mode 100644 index 000000000000..97952752a72b --- /dev/null +++ b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/.gitignore @@ -0,0 +1 @@ +!dev.db \ No newline at end of file diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/dev.db b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/dev.db new file mode 100644 index 0000000000000000000000000000000000000000..4b64d6a118767a0d9e9083d04822a75571cf4dae GIT binary patch literal 53248 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 RdHxr7t|9dN=l=hH{~tZFB!2(^ literal 0 HcmV?d00001 diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/package.json b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/package.json new file mode 100644 index 000000000000..1b535ed921ff --- /dev/null +++ b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/package.json @@ -0,0 +1,12 @@ +{ + "name": "my-prisma-project", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC" +} diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/schema.prisma b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/schema.prisma new file mode 100644 index 000000000000..2b0879c1f46c --- /dev/null +++ b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/schema.prisma @@ -0,0 +1,28 @@ +datasource db { + provider = "sqlite" + url = "file:dev.db" +} + +generator client { + provider = "prisma-client-js" +} + +// / User model comment +model User { + id String @id @default(uuid()) + email String @unique + // / name comment + name String? + posts Post[] +} + +model Post { + id String @id @default(cuid()) + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + published Boolean + title String + content String? + authorId String? + author User? @relation(fields: [authorId], references: [id]) +} diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts new file mode 100644 index 000000000000..eedda55c5bec --- /dev/null +++ b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts @@ -0,0 +1,30 @@ +import { getTestClient } from '../../../../utils/getTestClient' + +describe('middleware and transaction', () => { + test('typeof next reponse', async () => { + const PrismaClient = await getTestClient() + const db = new PrismaClient() + + let response + db.$use(async (params, next) => { + response = await next(params) + + return response + }) + + await db.$transaction([ + db.user.create({ + data: { + email: 'test@test.com', + name: 'test', + }, + }), + ]) + + expect(response.email).toMatchInlineSnapshot(`test@test.com`) + + await db.user.deleteMany() + + db.$disconnect() + }) +}) diff --git a/src/packages/client/src/runtime/getPrismaClient.ts b/src/packages/client/src/runtime/getPrismaClient.ts index eb784432a7d4..541c8763c6d7 100644 --- a/src/packages/client/src/runtime/getPrismaClient.ts +++ b/src/packages/client/src/runtime/getPrismaClient.ts @@ -435,16 +435,16 @@ export function getPrismaClient(config: GetPrismaClientOptions): any { * Hook a middleware into the client * @param middleware to hook */ - $use(middleware: QueryMiddleware) - $use(namespace: 'all', cb: QueryMiddleware) - $use(namespace: 'engine', cb: EngineMiddleware) - $use( - arg0: Namespace | QueryMiddleware, - arg1?: QueryMiddleware | EngineMiddleware, + $use(middleware: QueryMiddleware) + $use(namespace: 'all', cb: QueryMiddleware) + $use(namespace: 'engine', cb: EngineMiddleware) + $use( + arg0: Namespace | QueryMiddleware, + arg1?: QueryMiddleware | EngineMiddleware, ) { // TODO use a mixin and move this into MiddlewareHandler if (typeof arg0 === 'function') { - this._middlewares.query.use(arg0) + this._middlewares.query.use(arg0 as QueryMiddleware) } else if (arg0 === 'all') { this._middlewares.query.use(arg1 as QueryMiddleware) } else if (arg0 === 'engine') { @@ -915,45 +915,42 @@ new PrismaClient({ * @param middlewareIndex * @returns */ - private _request( + private async _request( internalParams: InternalRequestParams, - middlewareIndex = 0, ): Promise { try { - // in this recursion, we check for our terminating condition - const middleware = this._middlewares.query.get(middlewareIndex) + let index = -1 // async scope https://github.com/prisma/prisma/issues/3148 const resource = new AsyncResource('prisma-client-request') + // make sure that we don't leak extra properties to users + const params: QueryMiddlewareParams = { + args: internalParams.args, + dataPath: internalParams.dataPath, + runInTransaction: internalParams.runInTransaction, + action: internalParams.action, + model: internalParams.model, + } + + // prepare recursive fn that will pipe params through middlewares + const consumer = (changedParams: QueryMiddlewareParams) => { + // if this `next` was called and there's some more middlewares + const nextMiddleware = this._middlewares.query.get(++index) - if (middleware) { - // make sure that we don't leak extra properties to users - const params: QueryMiddlewareParams = { - args: internalParams.args, - dataPath: internalParams.dataPath, - runInTransaction: internalParams.runInTransaction, - action: internalParams.action, - model: internalParams.model, + if (nextMiddleware) { + // we pass the modfied params down to the next one, & repeat + return nextMiddleware(changedParams, consumer) } - return resource.runInAsyncScope(() => { - // call the middleware of the user & get their changes - return middleware(params, (changedParams) => { - // this middleware returns the value of the next one 🐛 - return this._request( - { - ...internalParams, - ...changedParams, - }, - ++middlewareIndex, - ) // recursion happens over here - }) - }) + const changedInternalParams = { ...internalParams, ...params } + + // TODO remove this, because transactionId should be passed? + if (index > 0) delete changedInternalParams['transactionId'] + + // no middleware? then we just proceed with request execution + return this._executeRequest(changedInternalParams) } - // they're finished, or there's none, then execute request - return resource.runInAsyncScope(() => { - return this._executeRequest(internalParams) - }) + return resource.runInAsyncScope(() => consumer(params)) } catch (e) { e.clientVersion = this._clientVersion From 9343c540252fe12747871dad40ddfaeffafb3a08 Mon Sep 17 00:00:00 2001 From: William Luke Date: Tue, 15 Jun 2021 12:32:58 +0300 Subject: [PATCH 2/6] add rollback test --- .../happy/middlewares-transaction/test.ts | 62 ++++++++++++++++++- 1 file changed, 60 insertions(+), 2 deletions(-) diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts index eedda55c5bec..811e315473d1 100644 --- a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts +++ b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts @@ -1,12 +1,14 @@ import { getTestClient } from '../../../../utils/getTestClient' describe('middleware and transaction', () => { - test('typeof next reponse', async () => { + test('next response and params', async () => { const PrismaClient = await getTestClient() const db = new PrismaClient() let response + let parameters db.$use(async (params, next) => { + parameters = params response = await next(params) return response @@ -20,11 +22,67 @@ describe('middleware and transaction', () => { }, }), ]) - + expect(parameters).toMatchInlineSnapshot(` + Object { + action: create, + args: Object { + data: Object { + email: test@test.com, + name: test, + }, + }, + dataPath: Array [], + model: User, + runInTransaction: true, + } + `) expect(response.email).toMatchInlineSnapshot(`test@test.com`) await db.user.deleteMany() + db.$disconnect() + }) + test('rollback', async () => { + const PrismaClient = await getTestClient() + const db = new PrismaClient() + + let response + let parameters + db.$use(async (params, next) => { + parameters = params + response = await next(params) + + return response + }) + try { + await db.$transaction([ + db.user.create({ + data: { + email: 'test@test.com', + name: 'test', + }, + }), + db.user.create({ + data: { + email: 'test@test.com', + name: 'test', + }, + }), + ]) + } catch (e) { + // TODO Look in to the error handling for transactions + // expect(e.error_code).toEqual('P2002') + expect(e).toMatchInlineSnapshot(` +Error occurred during query execution: +ConnectorError(ConnectorError { user_facing_error: Some(KnownError { message: "Unique constraint failed on the fields: (\`email\`)", meta: Object({"target": Array([String("email")])}), error_code: "P2002" }), kind: UniqueConstraintViolation { constraint: Fields(["email"]) } }) +`) + } + const users = await db.user.findMany() + // This should be empty as the transaction should have rolled back + expect(users).toMatchInlineSnapshot(`Array []`) + + await db.user.deleteMany() + db.$disconnect() }) }) From b289ea2b5d601bc2ece6805de7e5153bae872a44 Mon Sep 17 00:00:00 2001 From: William Luke Date: Tue, 15 Jun 2021 12:42:22 +0300 Subject: [PATCH 3/6] remove rollback test --- .../happy/middlewares-transaction/dev.db | Bin 53248 -> 53248 bytes .../happy/middlewares-transaction/test.ts | 65 +++--------------- 2 files changed, 9 insertions(+), 56 deletions(-) diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/dev.db b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/dev.db index 4b64d6a118767a0d9e9083d04822a75571cf4dae..b0f320fa15fb238bb6e6358af597621b8c84f04a 100644 GIT binary patch delta 101 zcmZozz}&Ead4e>f>_i!7M%j%C74|BIX{N?T$;pPgDMf diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts index 811e315473d1..ed59061a59ed 100644 --- a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts +++ b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts @@ -21,65 +21,18 @@ describe('middleware and transaction', () => { name: 'test', }, }), + db.user.findMany(), ]) expect(parameters).toMatchInlineSnapshot(` - Object { - action: create, - args: Object { - data: Object { - email: test@test.com, - name: test, - }, - }, - dataPath: Array [], - model: User, - runInTransaction: true, - } - `) - expect(response.email).toMatchInlineSnapshot(`test@test.com`) - - await db.user.deleteMany() - - db.$disconnect() - }) - test('rollback', async () => { - const PrismaClient = await getTestClient() - const db = new PrismaClient() - - let response - let parameters - db.$use(async (params, next) => { - parameters = params - response = await next(params) - - return response - }) - try { - await db.$transaction([ - db.user.create({ - data: { - email: 'test@test.com', - name: 'test', - }, - }), - db.user.create({ - data: { - email: 'test@test.com', - name: 'test', - }, - }), - ]) - } catch (e) { - // TODO Look in to the error handling for transactions - // expect(e.error_code).toEqual('P2002') - expect(e).toMatchInlineSnapshot(` -Error occurred during query execution: -ConnectorError(ConnectorError { user_facing_error: Some(KnownError { message: "Unique constraint failed on the fields: (\`email\`)", meta: Object({"target": Array([String("email")])}), error_code: "P2002" }), kind: UniqueConstraintViolation { constraint: Fields(["email"]) } }) +Object { + action: findMany, + args: undefined, + dataPath: Array [], + model: User, + runInTransaction: true, +} `) - } - const users = await db.user.findMany() - // This should be empty as the transaction should have rolled back - expect(users).toMatchInlineSnapshot(`Array []`) + expect(response.email).toMatchInlineSnapshot(`undefined`) await db.user.deleteMany() From 602e905876c4dcf0d87e5fe3ff6280229d2e8473 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=ABl=20Galeran?= Date: Tue, 15 Jun 2021 11:46:28 +0200 Subject: [PATCH 4/6] Update src/packages/client/src/runtime/getPrismaClient.ts --- src/packages/client/src/runtime/getPrismaClient.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/packages/client/src/runtime/getPrismaClient.ts b/src/packages/client/src/runtime/getPrismaClient.ts index 541c8763c6d7..3c139c4b18e5 100644 --- a/src/packages/client/src/runtime/getPrismaClient.ts +++ b/src/packages/client/src/runtime/getPrismaClient.ts @@ -915,7 +915,7 @@ new PrismaClient({ * @param middlewareIndex * @returns */ - private async _request( + private _request( internalParams: InternalRequestParams, ): Promise { try { From d41f9d38e8e2c8265fb5fa2e1c39a3d2a83a3661 Mon Sep 17 00:00:00 2001 From: William Luke Date: Tue, 15 Jun 2021 13:21:31 +0300 Subject: [PATCH 5/6] clean up test --- .../happy/middlewares-transaction/dev.db | Bin 53248 -> 53248 bytes .../happy/middlewares-transaction/test.ts | 38 ++++++++---------- 2 files changed, 16 insertions(+), 22 deletions(-) diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/dev.db b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/dev.db index b0f320fa15fb238bb6e6358af597621b8c84f04a..ea3cf06fb5a665d57c0267f469b011ba55d3dcfe 100644 GIT binary patch delta 101 zcmZozz}&Ead4e>f_Cy(HM(vFW74|BLrl}@o#zuy^$;qkax+W>6X1Ym9W~RD{hAC!= W29`-_CTXUd|JXm^Crag_fCd2fQ64z} delta 101 zcmZozz}&Ead4e>f>_i!7M%j%C74|BIX{N?T$;pPgDM { - test('next response and params', async () => { + test('typeof await next()', async () => { const PrismaClient = await getTestClient() - const db = new PrismaClient() - let response - let parameters - db.$use(async (params, next) => { - parameters = params - response = await next(params) + const prisma = new PrismaClient() + await prisma.user.deleteMany() + let responses: any[] = [] + prisma.$use(async (params, next) => { + const response = await next(params) + responses.push(response) return response }) - await db.$transaction([ - db.user.create({ + await prisma.$transaction([ + prisma.user.create({ data: { email: 'test@test.com', name: 'test', }, }), - db.user.findMany(), ]) - expect(parameters).toMatchInlineSnapshot(` -Object { - action: findMany, - args: undefined, - dataPath: Array [], - model: User, - runInTransaction: true, -} -`) - expect(response.email).toMatchInlineSnapshot(`undefined`) + expect(typeof responses[0]).toEqual(`object`) + expect(responses[0].email).toMatchInlineSnapshot(`test@test.com`) - await db.user.deleteMany() + const users = await prisma.user.findMany() + expect(users[0].email).toMatchInlineSnapshot(`test@test.com`) - db.$disconnect() + await prisma.user.deleteMany() + + prisma.$disconnect() }) }) From 31e9c57120b36106e8775bb6a71701e057006f26 Mon Sep 17 00:00:00 2001 From: William Luke Date: Tue, 15 Jun 2021 13:22:18 +0300 Subject: [PATCH 6/6] lint --- .../integration/happy/middlewares-transaction/test.ts | 2 +- src/packages/client/src/runtime/getPrismaClient.ts | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts index 571598f02772..098853c095fb 100644 --- a/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts +++ b/src/packages/client/src/__tests__/integration/happy/middlewares-transaction/test.ts @@ -7,7 +7,7 @@ describe('middleware and transaction', () => { const prisma = new PrismaClient() await prisma.user.deleteMany() - let responses: any[] = [] + const responses: any[] = [] prisma.$use(async (params, next) => { const response = await next(params) responses.push(response) diff --git a/src/packages/client/src/runtime/getPrismaClient.ts b/src/packages/client/src/runtime/getPrismaClient.ts index 3c139c4b18e5..e9c79851af3d 100644 --- a/src/packages/client/src/runtime/getPrismaClient.ts +++ b/src/packages/client/src/runtime/getPrismaClient.ts @@ -915,9 +915,7 @@ new PrismaClient({ * @param middlewareIndex * @returns */ - private _request( - internalParams: InternalRequestParams, - ): Promise { + private _request(internalParams: InternalRequestParams): Promise { try { let index = -1 // async scope https://github.com/prisma/prisma/issues/3148